day4: simplify
parent
6b9ec331ef
commit
82429ac5d0
@ -0,0 +1,23 @@
|
||||
(defn part1pred [lst]
|
||||
(or (and (>= (nth lst 0) (nth lst 2))
|
||||
(<= (nth lst 1) (nth lst 3)))
|
||||
(and (>= (nth lst 2) (nth lst 0))
|
||||
(<= (nth lst 3) (nth lst 1)))))
|
||||
|
||||
(defn part2pred [lst]
|
||||
(or (and (>= (nth lst 0) (nth lst 2)) (<= (nth lst 0) (nth lst 3)))
|
||||
(and (>= (nth lst 1) (nth lst 2)) (<= (nth lst 1) (nth lst 3)))
|
||||
(and (>= (nth lst 2) (nth lst 0)) (<= (nth lst 2) (nth lst 1)))
|
||||
(and (>= (nth lst 3) (nth lst 0)) (<= (nth lst 3) (nth lst 1)))))
|
||||
|
||||
(def count-filtered (comp println count filter))
|
||||
|
||||
(def elf-pairs
|
||||
(->> (slurp "input")
|
||||
(#(clojure.string/split % #"[^\d]"))
|
||||
(map read-string)
|
||||
(partition 4)))
|
||||
|
||||
(count-filtered part1pred elf-pairs)
|
||||
(count-filtered part2pred elf-pairs)
|
||||
|
@ -1,12 +0,0 @@
|
||||
(->> (slurp "input")
|
||||
(#(clojure.string/split % #"[^0-9]"))
|
||||
(map read-string)
|
||||
(partition 4)
|
||||
(map
|
||||
#(or (and (>= (first %) (nth % 2))
|
||||
(<= (second %) (nth % 3)))
|
||||
(and (>= (nth % 2) (first %))
|
||||
(<= (nth % 3) (second %)))))
|
||||
(filter true?)
|
||||
count
|
||||
println)
|
@ -1,12 +0,0 @@
|
||||
(->> (slurp "input")
|
||||
(#(clojure.string/split % #"[^0-9]"))
|
||||
(map read-string)
|
||||
(partition 4)
|
||||
(map
|
||||
#(or (and (>= (first %) (nth % 2)) (<= (first %) (nth % 3)))
|
||||
(and (>= (second %) (nth % 2)) (<= (second %) (nth % 3)))
|
||||
(and (>= (nth % 2) (first %)) (<= (nth % 2) (second %)))
|
||||
(and (>= (nth % 3) (first %)) (<= (nth % 3) (second %)))))
|
||||
(filter true?)
|
||||
count
|
||||
println)
|
Loading…
Reference in New Issue