add day 22 part 1
parent
db694b93a6
commit
9f589af2cc
@ -0,0 +1,25 @@
|
|||||||
|
(require '[clojure.string :as str])
|
||||||
|
|
||||||
|
(def input (->> (slurp "./in")
|
||||||
|
(str/split-lines)
|
||||||
|
(map
|
||||||
|
(fn [line]
|
||||||
|
[(if (str/starts-with? line "on") true false)
|
||||||
|
(->> (str/split line #"[^-\d]+")
|
||||||
|
(rest)
|
||||||
|
(map #(Integer/parseInt %))
|
||||||
|
(partition 2))]))))
|
||||||
|
|
||||||
|
(println
|
||||||
|
(frequencies
|
||||||
|
(vals
|
||||||
|
(reduce
|
||||||
|
(fn [cmap c]
|
||||||
|
(into cmap
|
||||||
|
(let [[xx yy zz] (second c)]
|
||||||
|
(for [x (range (max -50 (first xx)) (inc (min 50 (second xx))))
|
||||||
|
y (range (max -50 (first yy)) (inc (min 50 (second yy))))
|
||||||
|
z (range (max -50 (first zz)) (inc (min 50 (second zz))))]
|
||||||
|
[[x y z] (first c)]))))
|
||||||
|
{} input))))
|
||||||
|
|
Loading…
Reference in New Issue