fork(1) download
  1. #include <iostream>
  2. #include <random>
  3. using namespace std;
  4.  
  5. int main() {
  6. std::random_device rd;
  7. std::mt19937 engine(rd());
  8. std::uniform_int_distribution<> distribution(1, 6);
  9.  
  10. int wins[2] = {0, 0};
  11. const int WHITE = 0;
  12. const int BLACK = 1;
  13. for(int games = 0; games < 1000 * 1000; ++games) {
  14. int coins[6] = {0};
  15. for(int j = 0; j < 99; ++j) {
  16. const int dice = distribution(engine);
  17. for(int k = 0; k < dice; ++k) coins[k]++;
  18. }
  19. int res = 0;
  20. for(int j = 0; j < 6; ++j) res += coins[j] % 2;
  21. if(res > 3) wins[BLACK]++;
  22. else /* if(res < 3) */ wins[WHITE]++;
  23. }
  24. cout << "White = " << wins[WHITE] << ", Black = " << wins[BLACK] << endl;
  25. return 0;
  26. }
Success #stdin #stdout 2.99s 3272KB
stdin
Standard input is empty
stdout
White = 499889, Black = 500111