You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
629 B
Clojure
26 lines
629 B
Clojure
(require '[clojure.string :as str])
|
|
|
|
(->> (read-line)
|
|
(#(str/split % #","))
|
|
(map #(Integer/parseInt %))
|
|
(reduce #(update %1 %2 inc) (vec (repeat 9 0)))
|
|
(iterate
|
|
#(let [nf (conj (vec (rest %)) (first %))]
|
|
(update nf 6 (partial + (get nf 8)))
|
|
)
|
|
)
|
|
(#(nth % 256))
|
|
(apply +)
|
|
(println)
|
|
)
|
|
|
|
; ->> read input from stdin
|
|
; split input string by commas
|
|
; convert string array into number array
|
|
; reduce to frequency counts
|
|
; create iterator that returns next day's counts
|
|
; get 256th iteration
|
|
; sum all frequency counts
|
|
; print results
|
|
|