this repo has no description

Day 3 of 2025

hauleth.dev b5ea05b3 43df0066

verified
+53 -1
+1 -1
2025/day02.livemd
··· 77 77 |> Enum.sum() 78 78 ``` 79 79 80 - <!-- livebook:{"offset":1434,"stamp":{"token":"XCP.XGwVuWkI5pveel-Tx5hGUsCOmJKjA6byJZgIevkuBoRsAeaI3iyjR6XNRi9nwICSeuXI_2gJ9nWRKsSPzj30sqjcf8vmy_6FGXhLmap28ImjUKnK7ruHw0EpJansNfksuQ","version":2}} --> 80 + <!-- livebook:{"offset":1434,"stamp":{"token":"XCP.NoAgOlNzs9jV0M8QxQDrdfMwKQR_xYkBG2FLF06XnKPtJ5ps3S83JucEVQZ7fJF0utUaryiCOT7xPWESlw3lS3TI6Jujiw8uFAZdKEXUL_jmZMHVF37TxiY4vRwKjfwvfg","version":2}} -->
+52
2025/day03.livemd
··· 1 + # Day 03 2 + 3 + ```elixir 4 + Mix.install([:kino_aoc]) 5 + ``` 6 + 7 + ## Section 8 + 9 + <!-- livebook:{"attrs":"eyJhc3NpZ25fdG8iOiJwdXp6bGVfaW5wdXQiLCJkYXkiOiIzIiwic2Vzc2lvbl9zZWNyZXQiOiJBRFZFTlRfT0ZfQ09ERV9TRVNTSU9OIiwieWVhciI6IjIwMjUifQ","chunks":null,"kind":"Elixir.KinoAOC.HelperCell","livebook_object":"smart_cell"} --> 10 + 11 + ```elixir 12 + {:ok, puzzle_input} = 13 + KinoAOC.download_puzzle("2025", "3", System.fetch_env!("LB_ADVENT_OF_CODE_SESSION")) 14 + ``` 15 + 16 + ```elixir 17 + batteries = 18 + puzzle_input 19 + |> String.split("\n", trim: true) 20 + |> Enum.map(fn row -> 21 + row 22 + |> String.to_charlist() 23 + |> Enum.map(& &1 - ?0) 24 + end) 25 + ``` 26 + 27 + ```elixir 28 + defmodule Joltage do 29 + def make_largest(list, n) do 30 + to_remove = length(list) - n 31 + Enum.reduce(1..to_remove, list, fn _, acc -> make_larger(acc) end) 32 + end 33 + 34 + def make_larger([_]), do: [] 35 + def make_larger([a, b | rest]) when a < b, do: [b | rest] 36 + def make_larger([b | rest]), do: [b | make_larger(rest)] 37 + end 38 + ``` 39 + 40 + ## Part 1 41 + 42 + ```elixir 43 + Enum.sum_by(batteries, &Integer.undigits(Joltage.make_largest(&1, 2))) 44 + ``` 45 + 46 + ## Part 2 47 + 48 + ```elixir 49 + Enum.sum_by(batteries, &Integer.undigits(Joltage.make_largest(&1, 12))) 50 + ``` 51 + 52 + <!-- livebook:{"offset":1124,"stamp":{"token":"XCP.c4B4LAKOm9IZipbHc85MIeUBdcwcaQptUgMJIlHzU3DD1hssADSGdE-vByW1pHXsrARIeklYPeAk8Nn3AXBYvoEjBgm8zEP9oMXmp04xI_hLHezHURvrp6zdapkG0-l_sw","version":2}} -->