diff options
Diffstat (limited to '2021/day-02/day-02.rkt')
-rw-r--r-- | 2021/day-02/day-02.rkt | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/2021/day-02/day-02.rkt b/2021/day-02/day-02.rkt index dbd1275..0bd0c3d 100644 --- a/2021/day-02/day-02.rkt +++ b/2021/day-02/day-02.rkt @@ -9,31 +9,16 @@ (chunks-of _ 2))) ;; part 1 -(for/fold ([depth 0] - [position 0] - #:result (* depth position)) - ([motion (in-list motion-data)]) +(for/fold ([depth 0] [position 0] #:result (* depth position)) ([motion (in-list motion-data)]) (match motion - [(list 'forward x) (values depth - (+ position x))] - [(list 'up x) (values (- depth x) - position)] - [(list 'down x) (values (+ depth x) - position)])) + [(list 'forward x) (values depth (+ position x))] + [(list 'up x) (values (- depth x) position)] + [(list 'down x) (values (+ depth x) position)])) ;; part 2 -(for/fold ([aim 0] - [depth 0] - [position 0] - #:result (* depth position)) +(for/fold ([aim 0] [depth 0] [position 0] #:result (* depth position)) ([motion (in-list motion-data)]) (match motion - [(list 'forward x) (values aim - (+ depth (* aim x)) - (+ position x))] - [(list 'up x) (values (- aim x) - depth - position)] - [(list 'down x) (values (+ aim x) - depth - position)]))
\ No newline at end of file + [(list 'forward x) (values aim (+ depth (* aim x)) (+ position x))] + [(list 'up x) (values (- aim x) depth position)] + [(list 'down x) (values (+ aim x) depth position)])) |