src/2017/days/day-05.lisp @ cd781337a694
Restructure file layout, add 2017 days 14 & 15
| author | Steve Losh <steve@stevelosh.com> |
|---|---|
| date | Thu, 05 Dec 2019 20:45:46 -0500 |
| parents | src/2017/day-05.lisp@4835e36925af |
| children | 182bdd87fd9e |
(defpackage :advent/2017/05 #.cl-user::*advent-use*) (in-package :advent/2017/05) (defun compute (data modification-function) (iterate (with maze = (fresh-vector data)) (with bound = (1- (length maze))) (with address = 0) (while (<= 0 address bound)) (counting t) (for offset = (aref maze address)) (callf (aref maze address) modification-function) (incf address offset))) (define-problem (2017 5) (data read-all) (342669 25136209) (values (compute data #'1+) (compute data (lambda (value) (+ value (if (>= value 3) -1 1))))))