Powered by AppSignal & Oban Pro
Would you like to see your link here? Contact us

Advent of Code 2021, Day 1

2021/01.livemd

Advent of Code 2021, Day 1

Setup

Mix.install([
  {:kino, "~> 0.4.1"}
])
sample_input = Kino.Input.textarea("Input")
puzzle_input = Kino.Input.textarea("Input")

Part 1

puzzle_input
|> Kino.Input.read()
|> String.split()
|> Enum.map(&String.to_integer/1)
|> Enum.chunk_every(2, 1, :discard)
|> Enum.map(fn [a, b] -> if a < b, do: 1, else: 0 end)
|> Enum.sum()

Part 2

puzzle_input
|> Kino.Input.read()
|> String.split()
|> Enum.map(&amp;String.to_integer/1)
|> Enum.chunk_every(3, 1, :discard)
|> Enum.map(&amp;Enum.sum/1)
|> Enum.chunk_every(2, 1, :discard)
|> Enum.map(fn [a, b] -> if a < b, do: 1, else: 0 end)
|> Enum.sum()