src/2019/days/day-01.lisp @ 35ad1f73c754

Add scratch.md to .hgignore
author Steve Losh <steve@stevelosh.com>
date Wed, 08 Dec 2021 21:47:32 -0800
parents 182bdd87fd9e
children (none)
(advent:defpackage* :advent/2019/01)
(in-package :advent/2019/01)


(defun fuel-required (module-mass)
  (max 0 (- (floor module-mass 3) 2)))

(defun complete-fuel-required (module-mass)
  (iterate
    (for fuel :first (fuel-required module-mass) :then (fuel-required fuel))
    (summing fuel)
    (until (zerop fuel))))

(define-problem (2019 1) (data read-all) (3464458 5193796)
  (values (summation data :key #'fuel-required)
          (summation data :key #'complete-fuel-required)))

;# Scratch --------------------------------------------------------------------

;; (run)
;; (1am:run)