Advent of Code 2021 Solutions in Clojure
Table of Contents
1. Advent of Code 2021
1.1. Clojure
(defn- read-input [day]
(->> day
(str "inputs/day")
slurp
str/split-lines
))
(defn solution [data]
(println data)
(def start-time (.getTime (java.util.Date.)))
;; Implementation
(def end-time (.getTime (java.util.Date.)))
(def elapsed-time (- end-time start-time))
(println (str "Elapsed time: " elapsed-time "ms")))
1.1.1. Day 1
;; silver
(->> (read-input "1")
(map #(Integer/parseInt %))
(partition 2 1)
(filter #(< (first %) (second %)))
count)
;; gold
(->> (read-input "1")
(map #(Integer/parseInt %))
(partition 3 1)
(map #(reduce + %))
(partition 2 1)
(filter #(< (first %) (second %)))
count)