1//===----------------------------------------------------------------------===//
2//
3//                     The LLVM Compiler Infrastructure
4//
5// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <random>
11
12// template<class IntType = int>
13// class discrete_distribution
14
15// result_type max() const;
16
17#include <random>
18#include <cassert>
19
20int main()
21{
22    {
23        typedef std::discrete_distribution<> D;
24        double p0[] = {.3, .1, .6};
25        D d(p0, p0+3);
26        assert(d.max() == 2);
27    }
28    {
29        typedef std::discrete_distribution<> D;
30        double p0[] = {.3, .1, .6, .2};
31        D d(p0, p0+4);
32        assert(d.max() == 3);
33    }
34}
35