diff options
Diffstat (limited to 'advent-of-code/2023/06')
| -rw-r--r-- | advent-of-code/2023/06/1.rkt | 32 | ||||
| -rw-r--r-- | advent-of-code/2023/06/2.rkt | 29 |
2 files changed, 0 insertions, 61 deletions
diff --git a/advent-of-code/2023/06/1.rkt b/advent-of-code/2023/06/1.rkt deleted file mode 100644 index 5496476..0000000 --- a/advent-of-code/2023/06/1.rkt +++ /dev/null @@ -1,32 +0,0 @@ -#lang racket - -(define in (open-input-file "input")) - -(define (read-num-list) - (define line (read-line in)) - (map - string->number - (string-split - (cadr (string-split (string-trim line) ":"))))) - -(define times (read-num-list)) -(define distances (read-num-list)) - -(define games (map cons times distances)) - -(define (calc time hold-time) - (* hold-time (- time hold-time))) - -(define (solve time distance) - (define (loop counter hold-time) - (if (> hold-time time) - counter - (if (> (calc time hold-time) distance) - (loop (+ 1 counter) (+ 1 hold-time)) - (loop counter (+ 1 hold-time))))) - (loop 0 0)) - -(display (apply * (map - (λ (x) (solve (car x) (cdr x))) - games))) -(newline) diff --git a/advent-of-code/2023/06/2.rkt b/advent-of-code/2023/06/2.rkt deleted file mode 100644 index 2d666ed..0000000 --- a/advent-of-code/2023/06/2.rkt +++ /dev/null @@ -1,29 +0,0 @@ -#lang racket - -(define in (open-input-file "input")) - -(define (read-num) - (define line (read-line in)) - (string->number - (apply - string-append - (string-split - (cadr (string-split (string-trim line) ":")))))) - -(define time (read-num)) -(define distance (read-num)) - -(define (calc time hold-time) - (* hold-time (- time hold-time))) - -(define (solve time distance) - (define (loop counter hold-time) - (if (> hold-time time) - counter - (if (> (calc time hold-time) distance) - (loop (+ 1 counter) (+ 1 hold-time)) - (loop counter (+ 1 hold-time))))) - (loop 0 0)) - -(display (solve time distance)) -(newline) |
