From 4dc2dd17d9e4cb5b9ac90a1daa8e6b22aa06e93e Mon Sep 17 00:00:00 2001 From: Jonathan Chan Date: Thu, 10 Dec 2020 23:59:32 -0800 Subject: [PATCH] Refactored Day 11 minorly. --- src/11.rkt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/11.rkt b/src/11.rkt index 4823812..5639898 100644 --- a/src/11.rkt +++ b/src/11.rkt @@ -11,7 +11,7 @@ #{char=? % #\#} (for*/list ([r* (in-range (max 0 (sub1 r)) (min (+ r 2) length))] [c* (in-range (max 0 (sub1 c)) (min (+ c 2) width))] - #:when (not (and (= r r*) (= c c*)))) + #:unless (and (= r r*) (= c c*))) (vector-ref (vector-ref seats r*) c*)))) (define (visible-in seats r c dr dc) @@ -27,7 +27,7 @@ [else (in-cycle `(,c))])) (for/or ([r* rs] [c* cs] - #:when (not (and (= r r*) (= c c*)))) + #:unless (and (= r r*) (= c c*))) (define seat (vector-ref (vector-ref seats r*) c*)) #:final (member seat '(#\L #\#)) (char=? seat #\#))) @@ -38,8 +38,8 @@ (define (step-seats counter die seats) (let ([new-seats (vector-map vector-copy (vector-copy seats))]) - (for* ([r (range 0 length)] - [c (range 0 width)]) + (for* ([r (in-range 0 length)] + [c (in-range 0 width)]) (let ([seat (vector-ref (vector-ref seats r) c)]) (cond [(and (char=? seat #\L) @@ -51,12 +51,12 @@ new-seats)) (define (stable-count counter die) - (let loop ([seats input] [steps 0]) + (let loop ([seats input]) (let ([new-seats (step-seats counter die seats)]) (if (equal? seats new-seats) (vector-count #{char=? % #\#} (apply vector-append (vector->list seats))) - (loop new-seats (add1 steps)))))) + (loop new-seats))))) (define part1 (stable-count neighbours 4))