Created
February 28, 2017 08:33
-
-
Save Mygod/bb19b0a29fe6c121f1050cd978be8993 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* This program answers a fundamental question to life: | |
* | |
* Are there three dices A, B and C that satisfies P[A > B], P[B > C], P[C > A] > 5/9? | |
* | |
* It turns out there is. | |
*/ | |
#include <cstdio> | |
int main() { | |
for (int a1 = 1; a1 < 6; ++a1) for (int a2 = a1 + 1; a2 <= 6; ++a2) for (int ar = 1; ar < 6; ++ar) | |
for (int b1 = 1; b1 < 6; ++b1) for (int b2 = b1 + 1; b2 <= 6; ++b2) for (int br = 1; br < 6; ++br) | |
if ((a1 > b1) * ar * br + (a1 > b2) * ar * (6 - br) + (a2 > b1) * (6 - ar) * br + (a2 > b2) * (6 - ar) * (6 - br) > 20) | |
for (int c1 = 1; c1 < 6; ++c1) for (int c2 = c1 + 1; c2 <= 6; ++c2) for (int cr = 1; cr < 6; ++cr) | |
if ((b1 > c1) * br * cr + (b1 > c2) * br * (6 - cr) + (b2 > c1) * (6 - br) * cr + (b2 > c2) * (6 - br) * (6 - cr) > 20 && | |
(c1 > a1) * cr * ar + (c1 > a2) * cr * (6 - ar) + (c2 > a1) * (6 - cr) * ar + (c2 > a2) * (6 - cr) * (6 - ar) > 20) { | |
printf("A: "); | |
for (int i = 0; i < 6; ++i) printf("%d ", i < ar ? a1 : a2); | |
printf("\nB: "); | |
for (int i = 0; i < 6; ++i) printf("%d ", i < br ? b1 : b2); | |
printf("\nC: "); | |
for (int i = 0; i < 6; ++i) printf("%d ", i < cr ? c1 : c2); | |
printf("\nA > B: %d/36, B > C: %d/36, C > A: %d/36\n\n", | |
(a1 > b1) * ar * br + (a1 > b2) * ar * (6 - br) + (a2 > b1) * (6 - ar) * br + (a2 > b2) * (6 - ar) * (6 - br), | |
(b1 > c1) * br * cr + (b1 > c2) * br * (6 - cr) + (b2 > c1) * (6 - br) * cr + (b2 > c2) * (6 - br) * (6 - cr), | |
(c1 > a1) * cr * ar + (c1 > a2) * cr * (6 - ar) + (c2 > a1) * (6 - cr) * ar + (c2 > a2) * (6 - cr) * (6 - ar)); | |
} | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment