adventofcode

https://adventofcode.com/
Log | Files | Refs

puzzle_1.scm (743B)


      1 (define (part-1 x a b)
      2   (if (and (not (null? a)) (= 2020 (+ (car a) (car b))))
      3     (list (car a) (car b) (* (car a) (car b)))
      4     (if (null? a)
      5       (if (null? b)
      6         0
      7         (part-1 x x (cdr b)))
      8       (part-1 x (cdr a) b))))
      9 
     10 (define (part-2 x a b c)
     11   (if (and (not (null? a)) (not (null? b)) (= 2020 (+ (car a) (car b) (car c))))
     12     (list (car a) (car b) (car c) (* (car a) (car b) (car c)))
     13     (if (null? a)
     14       (if (null? b)
     15         (if (null? c)
     16           0
     17           (part-2 x a x (cdr c)))
     18         (part-2 x x (cdr b) c))
     19       (part-2 x (cdr a) b c))))
     20 
     21 (load "read_lines.scm")
     22 (define i (read-lines "files/1.txt" (lambda (x) (string->number x))))
     23 
     24 (display (part-1 i i i)) (newline)
     25 (display (part-2 i i i i)) (newline)