#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int randto(int n) {
int r, maxr = (RAND_MAX / n) * n;
do r
= rand(); while (r
>= maxr
); return r % n;
}
int main(void) {
int len = 0;
int count[1000] = {0};
for (int i = 0; i < 1000000; i++) {
int dealer = randto(13);
int player = randto(13);
if (player == dealer) {
continue;
}
if (player > 6) {
if (player > dealer) {
len++;
} else {
count[len]++;
len = 0;
}
} else {
if (player < 6) {
if (player < dealer) {
len++;
} else {
count[len]++;
len = 0;
}
} else {
}
}
}
int countlow = 0;
int counthigh = 0;
for (int i = 0; i < 25; i++) countlow += count[i];
for (int i = 25; i < 1000; i++) counthigh += count[i];
printf("losses: %d; wins: %d. Percentage %.2f\n", countlow
, counthigh
, (counthigh
* 100.0)/countlow
); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHRpbWUuaD4KCmludCByYW5kdG8oaW50IG4pIHsKICAgIGludCByLCBtYXhyID0gKFJBTkRfTUFYIC8gbikgKiBuOwogICAgZG8gciA9IHJhbmQoKTsgd2hpbGUgKHIgPj0gbWF4cik7CiAgICByZXR1cm4gciAlIG47Cn0KCmludCBtYWluKHZvaWQpIHsKICAgIHNyYW5kKCh1bnNpZ25lZCl0aW1lKDApKTsKICAgIGludCBsZW4gPSAwOwogICAgaW50IGNvdW50WzEwMDBdID0gezB9OwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCAxMDAwMDAwOyBpKyspIHsKICAgICAgICBpbnQgZGVhbGVyID0gcmFuZHRvKDEzKTsKICAgICAgICBpbnQgcGxheWVyID0gcmFuZHRvKDEzKTsKICAgICAgICBpZiAocGxheWVyID09IGRlYWxlcikgewogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYgKHBsYXllciA+IDYpIHsKICAgICAgICAgICAgaWYgKHBsYXllciA+IGRlYWxlcikgewogICAgICAgICAgICAgICAgbGVuKys7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBjb3VudFtsZW5dKys7CiAgICAgICAgICAgICAgICBsZW4gPSAwOwogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHBsYXllciA8IDYpIHsKICAgICAgICAgICAgICAgIGlmIChwbGF5ZXIgPCBkZWFsZXIpIHsKICAgICAgICAgICAgICAgICAgICBsZW4rKzsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgY291bnRbbGVuXSsrOwogICAgICAgICAgICAgICAgICAgIGxlbiA9IDA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICBpbnQgY291bnRsb3cgPSAwOwogICAgaW50IGNvdW50aGlnaCA9IDA7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IDI1OyBpKyspIGNvdW50bG93ICs9IGNvdW50W2ldOwogICAgZm9yIChpbnQgaSA9IDI1OyBpIDwgMTAwMDsgaSsrKSBjb3VudGhpZ2ggKz0gY291bnRbaV07CiAgICBwcmludGYoImxvc3NlczogJWQ7IHdpbnM6ICVkLiBQZXJjZW50YWdlICUuMmZcbiIsIGNvdW50bG93LCBjb3VudGhpZ2gsIChjb3VudGhpZ2ggKiAxMDAuMCkvY291bnRsb3cpOwogICAgcmV0dXJuIDA7Cn0K