aboutsummaryrefslogtreecommitdiff
path: root/2022/day-07/day-07.rkt
diff options
context:
space:
mode:
authorHunky Jimpjorps <thechairman@thechairman.info>2022-12-13 01:19:05 -0500
committerHunky Jimpjorps <thechairman@thechairman.info>2022-12-13 01:19:05 -0500
commitfd3d1f61531f5c48125b822ab3bd2cdc65fc9254 (patch)
tree488275bf0b9ff8d73821bb2a7f3be7bf82e2bcaa /2022/day-07/day-07.rkt
parent80fbd3beb20303dc5be6272a6e6e14939d5d94d0 (diff)
parentb70835069c1bcc8a9ca316b1795de3bfd6d6f12e (diff)
downloadgleam_aoc-fd3d1f61531f5c48125b822ab3bd2cdc65fc9254.tar.gz
gleam_aoc-fd3d1f61531f5c48125b822ab3bd2cdc65fc9254.zip
Merge branch 'main' of https://github.com/hunkyjimpjorps/AdventOfCode into main
Diffstat (limited to '2022/day-07/day-07.rkt')
-rw-r--r--2022/day-07/day-07.rkt14
1 files changed, 7 insertions, 7 deletions
diff --git a/2022/day-07/day-07.rkt b/2022/day-07/day-07.rkt
index 4ebd3b4..3826cc4 100644
--- a/2022/day-07/day-07.rkt
+++ b/2022/day-07/day-07.rkt
@@ -15,13 +15,13 @@
(for/fold ([folders (hash)] [current-path '()] [previously-seen? #false] #:result folders)
([cmd (in-list cmds)])
- (match cmd
- ["$ ls" (values folders current-path (hash-has-key? folders current-path))]
- ["$ cd /" (values folders '("/") #false)]
- ["$ cd .." (values folders (rest current-path) #false)]
- [(regexp #px"\\$ cd (.+)" (list _ folder)) (values folders (cons folder current-path) #false)]
- [(regexp #px"dir (.+)") (values folders current-path previously-seen?)]
- [(regexp #px"(.+) (.+)" (list _ (app ->number size) _))
+ (match (string-split cmd)
+ [(list "$" "ls") (values folders current-path (hash-has-key? folders current-path))]
+ [(list "$" "cd" "/") (values folders '("/") #false)]
+ [(list "$" "cd" "..") (values folders (rest current-path) #false)]
+ [(list "$" "cd" folder) (values folders (cons folder current-path) #false)]
+ [(list "dir" _) (values folders current-path previously-seen?)]
+ [(list (app ->number size) _)
(cond
[previously-seen? (values folders current-path previously-seen?)]
[else (values (update-sizes folders current-path size) current-path previously-seen?)])])))