summaryrefslogtreecommitdiffstats
path: root/mat/advent/1.c
blob: 3a50f342a2b27c35b10884ed5ed1946bd44a45c1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdlib.h>
#include <stdio.h>
int main (void) {
	unsigned vseh = 0;
	unsigned zmagajočih = 0;
	while (1) {
		int točke[40] = { 11, 10, 4, 3, 2, 11, 10, 4, 3, 2, 11, 10, 4, 3, 2, 11, 10, 4, 3, 2 };
		long p = random();
		while (p >= 2147483640)
			p = random();
		p %= 40;
		long d = random();
		while (d >= 2147483640)
			d = random();
		d %= 40;
		long t = random();
		while (t >= 2147483640)
			t = random();
		t %= 40;
		vseh++;
		if (točke[p] + točke[d] + točke[t] > 0)
			zmagajočih++;
		if (!(vseh % 1024) && vseh > 1e5)
			printf("\rvseh %u\tzmagajočih %u\tverjetnost %f\t", vseh, zmagajočih, (double) zmagajočih / (double) vseh);
	}
}