From e7c9108b95e39d7ea5a29ae06d619c4727f11027 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Fri, 29 Oct 2021 23:02:39 +0200 Subject: Initial commit --- 2015/14/puzzle-2.bc | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 2015/14/puzzle-2.bc (limited to '2015/14/puzzle-2.bc') diff --git a/2015/14/puzzle-2.bc b/2015/14/puzzle-2.bc new file mode 100644 index 0000000..4a41277 --- /dev/null +++ b/2015/14/puzzle-2.bc @@ -0,0 +1,33 @@ +scale = 0 + +/* Return the largest element from array `a` of length `l` */ +define max(a[], l) +{ + auto m, i + for (i = 0; i < l; i++) { + if (a[i] > m) + m = a[i] + } + return m +} + +define calc(speed[], time[], rest[], n) +{ + auto i, j, k, p[], d[] + + for (i = 0; i < 2503; i++) { + for (j = k = 0; j < n; j++) { + if (i % (time[j] + rest[j]) < time[j]) + d[j] += speed[j] + if (d[j] > k) + k = d[j] + } + + for (j = 0; j < n; j++) { + if (d[j] == k) + p[j] += 1 + } + } + + return max(p[], n) +} -- cgit v1.2.3