Day 22: Minor refactoring.
This commit is contained in:
parent
ab0a576334
commit
b744a6f2d9
15
src/22.rkt
15
src/22.rkt
|
@ -58,16 +58,15 @@
|
||||||
(append (rest player2) (list p2 p1))
|
(append (rest player2) (list p2 p1))
|
||||||
seen)]))])))
|
seen)]))])))
|
||||||
|
|
||||||
|
(define (score deck)
|
||||||
|
(for/sum ([card deck]
|
||||||
|
[score (reverse (range 1 (add1 (length deck))))])
|
||||||
|
(* card score)))
|
||||||
|
|
||||||
(define part1
|
(define part1
|
||||||
(let ([deck (combat player1 player2)])
|
(score (combat player1 player2)))
|
||||||
(for/sum ([card deck]
|
|
||||||
[score (reverse (range 1 (add1 (length deck))))])
|
|
||||||
(* card score))))
|
|
||||||
|
|
||||||
(define part2
|
(define part2
|
||||||
(match-let ([(list _ deck) (recursive-combat player1 player2)])
|
(score (second (recursive-combat player1 player2))))
|
||||||
(for/sum ([card deck]
|
|
||||||
[score (reverse (range 1 (add1 (length deck))))])
|
|
||||||
(* card score))))
|
|
||||||
|
|
||||||
(show-solution part1 part2)
|
(show-solution part1 part2)
|
||||||
|
|
Loading…
Reference in New Issue