(import (chezscheme)) ; Where the magic happens (import (lib)) ; Read my personal puzzle input (define input (call-with-input-file "input.txt" (lambda (port) (let loop ((line (get-line port)) (result '())) (if (eof-object? line) (reverse result) (loop (get-line port) (cons line result))))))) ; Part 1 gives 342669 for me (printf "Part 1 solution: ~a\n" (solve-part1 input)) ; Part 2 gives 25136209 for me (printf "Part 2 solution: ~a\n" (solve-part2 input))