diff options
author | HJ <thechairman@thechairman.info> | 2023-12-25 11:24:39 -0500 |
---|---|---|
committer | HJ <thechairman@thechairman.info> | 2023-12-25 11:24:39 -0500 |
commit | 40eb8465f7958ac056a3843d38234848b15464f7 (patch) | |
tree | 6a22b862107f219c6b1c354c4ac70792e9d41ce8 /aoc2023-other/day-10/day-10.rkt | |
parent | f3dfb53b1d59febe1f3bac746150372362f313a9 (diff) | |
download | gleam_aoc-40eb8465f7958ac056a3843d38234848b15464f7.tar.gz gleam_aoc-40eb8465f7958ac056a3843d38234848b15464f7.zip |
day 1-24 end-of-year style cleanup
Diffstat (limited to 'aoc2023-other/day-10/day-10.rkt')
-rw-r--r-- | aoc2023-other/day-10/day-10.rkt | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/aoc2023-other/day-10/day-10.rkt b/aoc2023-other/day-10/day-10.rkt index feaff64..64d8727 100644 --- a/aoc2023-other/day-10/day-10.rkt +++ b/aoc2023-other/day-10/day-10.rkt @@ -28,7 +28,8 @@ [(#\J) (list go-north go-west)]) (define (make-pipe-grid in) - (for*/hash ([(row r) (in-indexed (string-split in "\n"))] [(ch c) (in-indexed (string->list row))]) + (for*/hash ([(row r) (in-indexed (string-split in "\n"))] + [(ch c) (in-indexed (string->list row))]) (values (posn (add1 r) (add1 c)) ch))) (define (get-valid-S-neighbors S grid) @@ -74,7 +75,9 @@ (define (trace-ray pt pipes grid) (define row (posn-r pt)) - (for/fold ([acc 0] [corner #f] #:result acc) + (for/fold ([acc 0] + [corner #f] + #:result acc) ([col (in-naturals (posn-c pt))] #:do [(define test-pt (posn row col))] #:break (not (hash-has-key? grid test-pt)) @@ -89,4 +92,6 @@ [(#\L #\J) (values acc #f)] [(_ _) (values acc corner)]))) -(~> pipe-grid hash-keys (count (λ~> (trace-rays pipe-loop-set pipe-grid)) _)) +(~> pipe-grid + hash-keys + (count (λ~> (trace-rays pipe-loop-set pipe-grid)) _)) |