#include <random>
#include <array>
#include <iostream>

int RollADice1(const std::array<int, 6>& chances) {
	static std::random_device rd;  //Will be used to obtain a seed for the random number engine
	static std::mt19937 gen(rd()); //Standard mersenne_twister_engine seeded with rd()
	static std::discrete_distribution<int> distrib(chances.cbegin(), chances.cend());

	return distrib(gen);
}

int main() {
	constexpr std::array<int, 6> chances {
		100,
		100,
		200,
		100,
		100,
		600
	};

	std::array<int, 6> arr{};

	for(int i=0; i < 120'000; ++i) {
		++arr.at(RollADice1(chances));
	}

	for(int i=0; i < arr.size(); ++i) {
		std::cout << i << ' ' << arr[i] << '\n';
	}

    std::cout << "Sum: " << std::accumulate(arr.begin(), arr.end(), 0) << '\n';
}