Advent of Code 2021 Solutions in Clojure

Table of Contents

Advent of Code 2021

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")))

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)

JavaScript

Python

Elixir

Go

Haskell

Kotlin

Author: Jason Walsh

j@wal.sh

Last Updated: 2025-07-30 13:45:27

build: 2025-12-23 09:11 | sha: a10ddd7