From 4fd1aae518076adc8b97735225c678d6a362328d Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Sun, 6 Nov 2022 09:58:38 -0800 Subject: Kazinator's Advent of Code stuff. --- 2021/03/code.tl | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 2021/03/code.tl (limited to '2021/03/code.tl') diff --git a/2021/03/code.tl b/2021/03/code.tl new file mode 100644 index 0000000..4ffd1f4 --- /dev/null +++ b/2021/03/code.tl @@ -0,0 +1,26 @@ +(defun funny-less (left right) + (let ((ll (len left)) + (lr (len right))) + (or (< ll lr) + (if (eql ll lr) + (< (car left) (car right)))))) + +(defun funny-greater (left right) + (let ((ll (len left)) + (lr (len right))) + (or (> ll lr) + (if (eql ll lr) + (> (car left) (car right)))))) + +(defun maj-pare-down (list pos) + (cdr [find-max [group-by (op ref @1 pos) list] funny-greater])) + +(defun min-pare-down (list pos) + (cdr [find-min [group-by (op ref @1 pos) list] funny-less])) + +(let ((list *2)) + (each ((i 0..12)) + (upd list (min-pare-down @1 i))) + list) + +[apply * (mapcar (op toint @1 2) (flatten results))] ;; results contains two numbers in text form -- cgit v1.2.3