51 lines
1.1 KiB
Elixir
51 lines
1.1 KiB
Elixir
defmodule Day11Test do
|
|
use ExUnit.Case
|
|
doctest Aoc.Solution.Day11
|
|
import Aoc.Solution.Day11
|
|
|
|
@input ~s(
|
|
Monkey 0:
|
|
Starting items: 79, 98
|
|
Operation: new = old * 19
|
|
Test: divisible by 23
|
|
If true: throw to monkey 2
|
|
If false: throw to monkey 3
|
|
|
|
Monkey 1:
|
|
Starting items: 54, 65, 75, 74
|
|
Operation: new = old + 6
|
|
Test: divisible by 19
|
|
If true: throw to monkey 2
|
|
If false: throw to monkey 0
|
|
|
|
Monkey 2:
|
|
Starting items: 79, 60, 97
|
|
Operation: new = old * old
|
|
Test: divisible by 13
|
|
If true: throw to monkey 1
|
|
If false: throw to monkey 3
|
|
|
|
Monkey 3:
|
|
Starting items: 74
|
|
Operation: new = old + 3
|
|
Test: divisible by 17
|
|
If true: throw to monkey 0
|
|
If false: throw to monkey 1
|
|
)
|
|
|
|
test "11: Monkey in the Middle, part 1" do
|
|
expected = 10605
|
|
|
|
result = @input |> parse!() |> solve()
|
|
|
|
assert result == expected
|
|
end
|
|
|
|
# test "11: Monkey in the Middle, part 2" do
|
|
# expected = :something
|
|
|
|
# result = @input |> parse!() |> solve_again()
|
|
|
|
# assert result == expected
|
|
# end
|
|
end
|