Day 1
Setup
Mix.install([
{:kino, "~> 0.4.1"}
])
input = Kino.Input.textarea("Type in the problem input:")
Part 1
input
|> Kino.Input.read()
|> String.split("\n", trim: true)
|> Stream.map(&String.to_integer/1)
|> Stream.chunk_every(2, 1, :discard)
|> Enum.count(fn [x, y] -> x < y end)
Part 2
input
|> Kino.Input.read()
|> String.split("\n", trim: true)
|> Stream.map(&String.to_integer/1)
|> Stream.chunk_every(3, 1, :discard)
|> Stream.map(&Enum.sum/1)
|> Stream.chunk_every(2, 1, :discard)
|> Enum.count(fn [x, y] -> x < y end)