aboutsummaryrefslogtreecommitdiff
path: root/racket/aoc2015/day-25
diff options
context:
space:
mode:
Diffstat (limited to 'racket/aoc2015/day-25')
-rw-r--r--racket/aoc2015/day-25/day-25.rkt8
1 files changed, 8 insertions, 0 deletions
diff --git a/racket/aoc2015/day-25/day-25.rkt b/racket/aoc2015/day-25/day-25.rkt
new file mode 100644
index 0000000..975f4c3
--- /dev/null
+++ b/racket/aoc2015/day-25/day-25.rkt
@@ -0,0 +1,8 @@
+#lang racket
+
+(define max-r 2978)
+(define max-c 3083)
+
+(for/fold ([code 20151125] [r 1] [c 1]) ([i (in-naturals)] #:break (and (= max-r r) (= max-c c)))
+ (define new-code (modulo (* code 252533) 33554393))
+ (if (= r 1) (values new-code (add1 c) 1) (values new-code (sub1 r) (add1 c))))