this repo has no description
1# Day 05
2
3```elixir
4Mix.install([
5 :kino_aoc,
6 :range_set
7])
8```
9
10## Parse
11
12<!-- livebook:{"attrs":"eyJhc3NpZ25fdG8iOiJwdXp6bGVfaW5wdXQiLCJkYXkiOiI1Iiwic2Vzc2lvbl9zZWNyZXQiOiJBRFZFTlRfT0ZfQ09ERV9TRVNTSU9OIiwieWVhciI6IjIwMjUifQ","chunks":null,"kind":"Elixir.KinoAOC.HelperCell","livebook_object":"smart_cell"} -->
13
14```elixir
15{:ok, puzzle_input} =
16 KinoAOC.download_puzzle("2025", "5", System.fetch_env!("LB_ADVENT_OF_CODE_SESSION"))
17```
18
19```elixir
20[fresh, ingridients] = String.split(puzzle_input, "\n\n")
21
22fresh =
23 fresh
24 |> String.split()
25 |> Enum.map(fn range ->
26 [a, b] = range |> String.split("-") |> Enum.map(&String.to_integer/1)
27
28 a..b//1
29 end)
30 |> RangeSet.new()
31
32ingridients =
33 ingridients
34 |> String.split()
35 |> Enum.map(&String.to_integer/1)
36```
37
38<!-- livebook:{"branch_parent_index":0} -->
39
40## Part 1
41
42```elixir
43Enum.count(ingridients, & &1 in fresh)
44```
45
46<!-- livebook:{"branch_parent_index":0} -->
47
48## Part 2
49
50```elixir
51Enum.count(fresh)
52```
53
54<!-- livebook:{"offset":973,"stamp":{"token":"XCP.GHEtbWlG6LHz6I0d5Y_d4738EDILulvQyP1NtPISLeYWo9atG0Ailm43-eswn0JGS5h2z5Yxb8Xi8nGJLqUkj41eqpnT_u7NxVCT4ceeKMBsd5R-EuxBw0P7vLlBab68MA","version":2}} -->