From 18628e6092d9693779e6ce223c692338125c8573 Mon Sep 17 00:00:00 2001 From: Matthew Butterick Date: Sun, 3 Dec 2017 14:36:01 -0800 Subject: [PATCH] nit --- 2017/d3/main.rkt | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/2017/d3/main.rkt b/2017/d3/main.rkt index 43bac57..03a50df 100644 --- a/2017/d3/main.rkt +++ b/2017/d3/main.rkt @@ -5,7 +5,7 @@ (define (read-syntax path port) (strip-context #`(module mod "main.rkt" #,@(for/list ([datums (in-port read port)]) - datums)))) + datums)))) (provide (rename-out [#%mb #%module-begin])) (define-macro (#%mb STARS NUMBER ...) @@ -18,7 +18,7 @@ (define (ring int) (for/first ([i (in-naturals)] #:when (<= int (ring-last i))) - i)) + i)) (define (nth-coordinate n) (cond @@ -37,13 +37,14 @@ (define vals (make-hash)) (define (neighbor-sum n) (define c (nth-coordinate n)) - (define neighbor-offsets '(1 1+i +i -1+i -1 -1-1i -i 1-i)) (hash-ref! vals c (λ () (if (= c 0) 1 - (for/sum ([n (in-list neighbor-offsets)]) - (hash-ref vals (+ c n) 0)))))) + (for*/sum ([h (in-list '(-1 0 1))] + [v (in-list '(-1 0 1))]) + (define neighbor (+ h (* +i v))) + (hash-ref vals (+ c neighbor) 0)))))) (define (larger-sum x) (for*/first ([n (in-naturals 1)] #:when (> (neighbor-sum n) x)) - (neighbor-sum n))) \ No newline at end of file + (neighbor-sum n))) \ No newline at end of file