src/2016/days/day-06.lisp @ 2848a4548adf

2023/01 and 2022/01

Also start porting my test data to the new account, since Twitter imploded and
apparently it's impossible for a website to store a goddamn username and
password in The Year of Our Lord 2023 so everyone just outsources auth all
the time, ugh.
author Steve Losh <steve@stevelosh.com>
date Fri, 01 Dec 2023 11:05:43 -0500
parents 182bdd87fd9e
children (none)
(advent:defpackage* :advent/2016/06)
(in-package :advent/2016/06)

(defun freqs (lines)
  (iterate
    (for i :from 0 :below (length (first lines)))
    (collect (frequencies lines :key (rcurry #'elt i)))))

(defun freq-extrema (predicate freqs)
  (_ freqs
     alexandria:hash-table-alist
     (extrema predicate _ :key #'cdr)
     car))

(define-problem (2016 6) (data read-lines) ("nabgqlcw" "ovtrjcjh")
  (values
    (map 'string (curry #'freq-extrema #'>) (freqs data))
    (map 'string (curry #'freq-extrema #'<) (freqs data))))



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