From d3ea6d41cbb69c1c4ccb974a24fc4c63c8af8b2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20R=C3=B8dland?= Date: Wed, 13 Dec 2023 08:11:35 +0100 Subject: [PATCH] 2023 - Day 13 - Init --- .../kotlin/no/rodland/advent_2023/Day13.kt | 27 + .../no/rodland/advent_2023/Day13Test.kt | 82 + src/test/resources/2023/input_13.txt | 1387 +++++++++++++++++ src/test/resources/2023/input_13_test.txt | 15 + 4 files changed, 1511 insertions(+) create mode 100644 src/main/kotlin/no/rodland/advent_2023/Day13.kt create mode 100644 src/test/kotlin/no/rodland/advent_2023/Day13Test.kt create mode 100644 src/test/resources/2023/input_13_test.txt diff --git a/src/main/kotlin/no/rodland/advent_2023/Day13.kt b/src/main/kotlin/no/rodland/advent_2023/Day13.kt new file mode 100644 index 00000000..64e05c5c --- /dev/null +++ b/src/main/kotlin/no/rodland/advent_2023/Day13.kt @@ -0,0 +1,27 @@ +package no.rodland.advent_2023 + +import no.rodland.advent.Day + +// template generated: 13/12/2023 +// Fredrik Rødland 2023 + +class Day13(val input: List) : Day> { + + private val parsed = input.parse() + + override fun partOne(): Long { + return 2 + } + + override fun partTwo(): Long { + return 2 + } + + override fun List.parse(): List { + return map { line -> + line + } + } + + override val day = "13".toInt() +} diff --git a/src/test/kotlin/no/rodland/advent_2023/Day13Test.kt b/src/test/kotlin/no/rodland/advent_2023/Day13Test.kt new file mode 100644 index 00000000..fb71701d --- /dev/null +++ b/src/test/kotlin/no/rodland/advent_2023/Day13Test.kt @@ -0,0 +1,82 @@ +package no.rodland.advent_2023 + +import no.rodland.advent.* +import org.junit.jupiter.api.Nested +import org.junit.jupiter.api.Test +import readFile + +// +// run: download_aoc_input.sh to download input +// + +@Suppress("ClassName") +@DisableSlow +internal class Day13Test { + private val data13 = "2023/input_13.txt".readFile() + private val test13 = "2023/input_13_test.txt".readFile() + + private val resultTestOne = 2L + private val resultTestTwo = 2L + private val resultOne = 2L + private val resultTwo = 2L + + val test = defaultTestSuiteParseOnInit( + Day13(data13), + Day13(test13), + resultTestOne, + resultOne, + resultTestTwo, + resultTwo, + { Day13(data13) }, + { Day13(test13) }, + ) + + @Nested + inner class Init { + @Test + fun `13,-,example,1`() { + report(AOCTest({ "123".toInt() }, Unit, 123, 5, "13".toInt(), Part.TWO, false, "example")) + } + + @Test + fun `13,-,example,2`() { + report(test.initTest.copy()) + } + + @Test + fun `13,-,test,init`() { + report(test.initTest) + } + + @Test + fun `13,-,live,init`() { + report(test.initLive) + } + } + + @Nested + inner class `Part 1` { + @Test + fun `13,1,test`() { + report(test.testPart1) + } + + @Test + fun `13,1,live,1`() { + report(test.livePart1) + } + } + + @Nested + inner class `Part 2` { + @Test + fun `13,2,test`() { + report(test.testPart2) + } + + @Test + fun `13,2,live,1`() { + report(test.livePart2) + } + } +} diff --git a/src/test/resources/2023/input_13.txt b/src/test/resources/2023/input_13.txt index e69de29b..5e3839ba 100644 --- a/src/test/resources/2023/input_13.txt +++ b/src/test/resources/2023/input_13.txt @@ -0,0 +1,1387 @@ +.#..#...... +..#.#...... +..#...#.... +#.##...#### +.#..#..#### +#.#.##.#### +###..#.#..# + +.#.##.#.### +..####..##. +#########.. +.##..##..## +.##..##..## +#########.. +..####..##. +.#.##.#.### +#.#..#.##.# +..#####.### +...##.....# +..#..#..#.. +...##...#.. + +..##.#. +#...### +#...### +..##.## +..#..#. +....##. +#.#.#.. +.#...## +##.#... +###.### +###.### +##.#... +.#...## + +#.#.### +..##.## +...#### +##....# +##....# +...#### +..##.## +#.#.### +#.##### +....##. +.#...#. +#.##### +#....## +#..##.# +#..##.# +#..#.## +#.##### + +###...#...#.#.. +.#.##.#.....#.. +..###..#..#.... +..###..#..#.... +.#.##.#........ +###...#...#.#.. +###..#..##.#.## + +##.#..... +##.#...#. +..#.#..## +..##....# +#..#....# +#.#..##.. +#.#..##.. +#..#....# +..##....# +..#.#..## +##.#...#. +##.#..... +#.#..#.#. + +#..#..#..#.## +..........### +..........### +#..#..#..#.## +###....####.# +....##......# +##..##..##..# +###....####.. +....##.....## +.#......#.#.# +.##....##..## +..#.##.#....# +####..######. +.##..#.##.### +..##..##...#. + +..#.###..#. +####.#..... +..#.##.##.. +...##...#.# +###.#...... +#######.### +..#.#...### +###.###.##. +###..#...## +##....##.#. +####...#.## +..###...... +.###..#.#.. +##.##..#.#. +##.##..#.#. + +#.##.###......# +.#..#.#..##..## +..##..#.#..#... +#....##.#.#.#.. +#....##.######. +######....###.# +#.##.#...##.##. +..##..#####.### +..##..######..# +..##..######..# +..##..#####.### +#.##.#...##.##. +######....###.# +#....##.######. +#....##...#.#.. + +......#....#... +.####...##...#. +######..##..### +######..##..### +......##..##... +.####.######.## +.#..#.######.#. + +#############..## +.########...###.# +.########...#.#.# +#.##..##.###..##. +..#.##.#....#.#.. +..#....#...####.. +#.#....#.##.#.#.. +.#......#......## +.#......#......## +#.#....#.##.#.##. +..#....#...####.. + +...#.###.#. +....##.#.## +..##..#.### +..##..#.### +....##.#.## +...#.###.#. +#.#.#.#.#.. +...##.#..## +.#.####...# +.#.#.##...# +...##.#..## +#.#.#.#.#.. +...#.###.#. +....##.#.## +..##..#.### + +.#.##.#.#.#..#. +.........###### +###..####.#..#. +##.##.##....... +..#..#..##....# +.#.##.#...####. +##.....#..####. +..####..#..##.. +##....##...##.. + +....####.####.. +.#..####.####.. +#.#.##..#####.. +##..#.#.####### +.#.#.##.##.##.. +..##..#.##..#.. +####....#...#.. +..#.#....##.#.. +#..#..#..##.#.. +.#.......#.#### +..........##... +#.....####.#.## +##....##....### +.....#.##.##### +.#..#.##....#.. +#.....###...#.. +#....##........ + +#..##..#....### +#..#.#......### +.....#..####... +.##.##.##...### +.....##.###..## +.##..##....#.#. +.##...#.#.#.#.. + +.###.....## +..#......#. +..####.#### +#.##...#.#. +#..#...#### +##.#.#..### +##.#.#..### +#..#...#### +#.##...#.#. +..####.#### +..#......#. +.###.....## +.#.##.#..#. +..#...###.. +..#...###.. +.#.#..#..#. +.###.....## + +###..## +...#### +.#..#.# +#.##... +#...#.. +#...#.. +#.##... + +..#......#..... +#.#......#.#..# +.#..####..#.... +.#.#....#.#.##. +..########..##. +..#.####.#..... +..###..###..##. +#..######..#### +.#####.####.##. +#..#....#..#..# +##........##..# +.....##.....##. +.##.#..#.##.... + +...#.## +...#... +#..#### +#..#### +...#... +...#.## +#.###.# +.##.#.# +.#.###. +.##.##. +.##..#. +.#.###. +.##.#.# + +..#...##. +..###..## +...##.#.. +###.#.##. +..##..##. +###..###. +..#.#.#.. +####..#.. +...#####. +##.####.. +###.#..## +..####### +..####### +###.#...# +##.####.. +...#####. +####..#.. + +.##...##. +#..##..#. +###..#### +#..##.##. +.##..##.. +#..###.## +.##.##.## +....##.## +.##.##..# +.##.##... +.##.##... +.##.##..# +....##.## + +#...#.##.##..#.## +##..#.###...##### +##..#.###...###.# +#...#.##.##..#.## +...#.....###..##. +..####.#.#.####.# +..####.#.#.####.# +...#.....###..##. +#...#.##.##..#.## + +.##..####.##### +.##..####.####. +.##.#.##..#.### +#..#.######.#.# +.#....##..##... +##..#.####..##. +.....#......##. +##..##..#.#.### +...##..#.#.#.#. +...#..##.###... +...#..##.###... + +#..##.#.#.# +######..##. +#..#...#..# +#..#...#..# +######..##. +#..##.#.#.# +#..#..##..# +#...##.#.## +######.##.# +....#..#### +####..##.#. + +##.##..##.#.##.#. +....##.###..##..# +.##.#.##..######. +.##.#.##..######. +....##.###..##..# +##.##..##.#.##.#. +#####..#...####.. +..##....###.##.## +.####...##.#..#.# +.####....#......# +##..#...#........ +.##.#..#..##...#. +#####..#.##....## +#.#.#.#..#.####.# +##.######........ + +....#.#.. +....#.##. +##.##.#.. +##...#.#. +#.##..### +#.##..### +##...#.#. + +##....###.####..# +##....###.####..# +.#.##.#.....##### +.######..#.#..#.# +.######.##.###### +..#..#....####.## +.######.#.#.###.# +###########.#.##. +........##....#.. +##.##.###..#.#### +#......##....###. +#.....#####...#.# +###..###.##...##. + +#..#...## +........# +....##... +....###.. +........# +#..#...## +####.##.. + +.##..#. +##....# +##....# +.##..#. +...#.#. +#####.# +#####.. +...#.#. +.##..#. + +.##....#.#.## +#..#.....#... +.##.....###.. +#..#...##.... +#..#...#...## +..#.#.#...... +.....#.#..### + +#.....###....#.## +#.##.#.....#...#. +....#####.#...### +#...#..#...#..... +....#...#...####. +....#.#.#...####. +#...#..#...#..... +....#####.#...### +#.##.#.....#...#. +#.....###....#.## +.##.##....#..##.. +...#.#.#..#.#...# +####...##.##...#. +.###.....###....# +.###.....###....# + +..##..#...##... +##..##..#....#. +......#.#.##.#. +..##..#.#.##.#. +#.##.###.####.# +.####.....##... +.###..#........ +.#..#.####..### +##..###...##... +#.##.####.##.## +######....##... +######.##.##.## +.####.#.#.##.#. +######..##..##. +.#..#..######## +#.##.##...##... +#....##.##..##. + +#..#..##.##.....# +....###.#...##.#. +##..#.#...###.##. +##...#..#.#..##.# +..#.#.....#.##### +..#.#.....#.##### +###..#..#.#..##.# +##..#.#...###.##. +....###.#...##.#. +#..#..##.##.....# +#..#..##.##.....# +....###.#...##.#. +##..#.#...###.##. +###..#..#.#..##.# +..#.#.....#.##### + +##.########.####. +......#...#.####. +#.##..###.####### +##...#.###.##..## +##...#.###.##..## +#.##..###.####### +......#...#.####. +##.########.####. +..#####..#.###### +#..###.#.#.#....# +..#.#....##.####. +......#.###..#... +..#...##...#....# +#...#....##..##.. +.###.#.##.##.##.# +..#...##.##...... +.##..#.##....##.. + +.###...#...#.#. +.###...#...#.#. +#...#.###..###. +##.##.#..#.#### +.........#..### +..##.###..###.# +.......####.... +####.#.#.#..### +####.###.#..### +.......####.... +..##.###..###.# + +.#..#.. +.#..#.. +#.#.#.. +.##.#.# +#..#.## +..###.. +.#..... +######. +#####.# +#####.# +######. +.#..#.. +..###.. +#..#.## +.##.#.# + +#....#.#...## +######....#.. +..........### +########.#... +#...###...### +##..###....## +..##...##.... +#....##...#.. +......#.#.#.. + +##########.#.#.## +..........#.#.##. +#..#..#..#..##..# +..........#.###.# +..........######. +.##.##.##.####.#. +#..####..#####..# +#..####..##...##. +..#.##.#...###..# +#..####..#......# +####..#######..## +#..####..##.##.#. +####..#####..#### +....##.........#. +.............##.. + +.#..#.####..#.#.. +####.#...#....... +#.##.#.#.##..#... +.........#..#.### +......#..#.#.##.. +######.#.##...#.. +.####..##.#...### + +...##.##. +.....#.## +##...#..# +...##.##. +..####### +..####### +...##.##. +##...#..# +.....#.## +...##.##. +..####..# +....##### +.#.##.... + +..##....### +######.#..# +..##..#.#.. +#######.### +...#.####.. +##..#.###.# +##..#...#.# +###.##..##. +###.#.#.#.# +...#...#..# +###.#.##### +###..##.... +...#.#....# +...#.#....# +###..##.... +###.#.###.# +...#...#..# + +##..####.#. +##..###.### +......##.#. +######...## +##..##..#.# +##..###...# +##..###.### +#.##.#.#### +......####. + +..#.##.##.# +#.##..####. +#....#.##.# +.##....##.. +#..##...... +##.#....... +#####...... +#.#.#.#..#. +##..#.####. +#.#...#..#. +#.##..###.. +###........ +###.#...... +..###..##.. +..###..##.. + +####.###.##.# +......#...... +....##.##.#.. +....#..#.#..# +#####..#.###. +.....##...##. +#####.#.#.#.. +....#......#. +.....#..#...# +####.#####.#. +#####.#..#... +.##...######. +.....#.###### +####.#.##...# +.....##..#### +....###.###.# +####.####...# + +..###....###... +.##...###...... +#.#..#..###.... +##.##.#...#..## +#.####.#.##.### +#.####.#.##.### +##.##.#...#..## +#.#..#..###.... +.##...###...... +..###....###... +#.#..#......### +....#..##.#.### +...#.##..#.###. +.#.####.#.##.## +.#...##.###.### +###..#...#...## +###.#.#........ + +...##..#.## +..#..###..# +##.##.##..# +..#.#.#.... +##....#.##. +..#####.... +##..#.##..# +###...#.... +...#.#.#..# +...######## +###..##.... +..##....... +###..#..... +###.##..... +###.#.#.... + +.#.#..# +#..#..# +.#.#### +#...##. +..#.... +##.#..# +.#..... +#...##. +#...##. +.#..... +#..#..# + +###...##.##..#.#. +..#.####...#....# +....#..######.... +....#.....#..#.#. +....#.....#..#.#. +....#..######.... +..#.####...#....# +###..###.##..#.#. +###..#......#..#. +##..###.##..##### +...#...###....#.. + +.#.....####..##.# +#.####.##.##..... +##..###.###.##..# +...###.##.##.#... +##.#.#.##.#..#... +#..#.##.#.....#.. +.#..#...##....##. +.#..#...##....##. +#..#.##.......#.. +#..#.##.......#.. +.#..#...##....##. +.#..#...##....##. +#..#.##.#.....#.. + +##..##..##..# +..##.#..#.##. +##...#.##...# +###..####..## +..##..##..##. +..#...##...#. +.....####.... +....#....#... +..###.##.###. +###........## +..###.##.###. +##..######..# +..#..#..#..#. +##..##..##..# +..##.#..#.##. + +#....######## +.#....#..##.. +#.##...##..## +..#.#.#.####. +##...#..####. +###.#...####. +.#.##...#..#. +.#....#..##.. +..#...#.####. +..#...#.####. +.#....#..##.. +.#.##...#..#. +##..#...####. + +#.#......###.##.# +#.#...#..###.##.# +#..###..#.#..##.. +###.#..##..##..## +.#..#..##........ +#.###.....###..## +##..#.#.##.###### +##.#.....#.#.##.# +##...#.##..#....# +...#.##.......... +.##.#.#..#....... + +..#####.# +....##.## +..#.##### +#..###.#. +###..##.# +.#...#.#. +.#...#.#. +###..#..# +#..###.#. +..#.##### +....##.## +..#####.# +.###..##. +...#.#### +..###...# +..###...# +...#.#### + +..#...#...##.#. +##.....####.### +##.....###..### +..#...#...##.#. +##........#.... +..#.##.###.#... +####.###.#####. +####.....###..# +....#.....##### +##....#.#..#..# +....##..#..#.#. +...##.###.....# +###.#.##.....## +##..###.#..#### +##..####....##. +##.###....#.#.# +###..#.#.##.#.# + +...#.##.. +..#.####. +####.##.# +###.#..#. +##.#.##.# +..#..##.. +###...... +....#..#. +.....##.. +####....# +...#.##.# +..#..##.. +##.###### + +#.##..... +..#.#..#. +..#.#..#. +#.##..... +.##.....# +##.##..## +..###.### +.##..##.. +.##..##.. +..###.### +##.##..## +.##.....# +#.###.... + +#....#.##.####... +##.#...#..#..#.#. +####..####.###### +..#...#...#...##. +###....#.#.#####. +###.#..##.....#.# +##.####.##.##..## +....##...##..#..# +##.....#.#.#...## +###.#.##.#.##..## +..##..##....#.### +##.##..#...###... +...###.#...####.# +...#....##.....## +##########...#..# +##....#.#.#...... +##....#.#.#...... + +###.##.#### +.##.##.##.# +#####.####. +#.#.##.#.#. +.#..##..#.# +..##..##... +#...##...## +#.#.##.#.## +##.####.##. +####..##### +..##..##..# +.##....##.# +.##....##.# +..##..##..# +####..##### +##.####.##. +#.#.##.#.## + +.###............# +..#..##......##.. +###....#....##... +###..####..####.. +.....##.#..#.##.. +..###.###..###.## +.##....#.##.#.... +..#...#......#... +#..#.###.##.###.# +#.##...#.##.#...# +..#.##.#.##.#.##. +####...#....#...# +####...#....#...# +..#.##.#.##.#.##. +#.##...#.##.#...# + +#..##.# +.##..## +.##..## +#..##.# +.#...## +..##### +....#.. +.#...#. +.#.###. +.#.###. +.#...#. +....#.. +..####. + +##....... +##..#..## +#####.... +.#.#..#.. +.....#.#. +.##.##.## +.##.##.## +.....#.#. +.#.#..#.. +#####.#.. +##..#..## +##....... +##....... +##..#..## +#####.#.. + +..###....#.#.###. +#........###.#### +..#...##.###.#..# +.#.##.##....#.... +#.##.###..#.##### +##..###.#.....##. +##..###.#.....##. + +..##.#.##.#.##..# +.#.##.####..#.#.# +...###....###...# +#....#....#....#. +####.#....#.##### +.##..........##.. +.##..........##.. +####.#....#.##### +#....#....#....#. + +..##...## +.....#.## +.###.#... +..###.#.. +..#.##.## +...#.#### +...##..## +##.##...# +#####.#.. +###.####. +.......#. +##.#.#### +##.#.#### +.......#. +###.####. + +#..#..### +#####..## +..#.#.... +###..#..# +##.###... +...###.#. +##.###.#. +...#..... +...###..# +....#..#. +##.#####. +###.#.### +###.#.### +##.#####. +....#..#. +...###..# +...#..... + +...#... +...#.#. +##..... +....##. +...#.#. +..#.#.. +#.#.#.# +#.#.#.# +..#.#.. +...#.#. +....##. +##..... +...#.#. +...#... +##..#.. +#.#.#.. +#.##... + +#..#...##.#.... +#...#....###..# +.#.##.......##. +##..##..#..#..# +####..##..#.... +###..#......... +#..##.#.##..##. +##..#.#.#..#..# +.###########..# +..........#.##. +###....#.#..... +##...##.####..# +##...##.####..# +###....#.#..... +..........#.##. +.###########..# +##....#.#..#..# + +####.##.###.. +###########.. +....##...##.. +########.#### +####.####.#.# +....##.#.#### +####..#.##.#. +######.#...## +#..#..#..#... +........#.... +....##...##.# + +.###..##. +###.#.#.. +.######.. +###.##.#. +###..#.#. +....#..#. +....#..#. +###..#.#. +###.##.#. +.######.. +###.#.#.. +.###..##. +..#.##..# +..#.#...# +..#.#...# +..#..#..# +.###..##. + +###.#.. +.#.#### +#.##.## +...#### +.#.#..# +##.#.## +#####.. +#####.. +##.#.## + +..##.###..##.##.# +#.#....##.#...#.. +#.#....##.#...... +..##.###..##.##.# +..##.###..##.##.# +#.#....##.#...... +#.#....##.#...#.. +..##.###..##.##.# +##.##.##....##.#. +.#.#.###.###..#.. +...##.#.#.####### +##..#.#..###.#### +#.....##.###.#..# +.####.##..#.##... +###.#.#...##.#.#. + +#....###.###..# +#######.#...#.. +######.##..###. +#....#..#...#.# +##..##..####.#. +#########...... +.#..#.####....# +######.##....#. +######.##....#. +.#..#.####....# +#########.....# +##..##..####.#. +#....#..#...#.# +######.##..###. +#######.#...#.. + +##.##..##.####. +.#........#..#. +.#..#..#..#..#. +###.#..#.###### +##........####. +##.#....#.####. +..###..###....# +.#...##.#.#..#. +###.####.###### + +#...#..#. +#.#.#..#. +#.#..##.. +###.#..#. +#.###..## +#.#..##.. +##..#..#. +####....# +.#.#....# + +##.....##.... +.#...##..##.. +#..##.#..#.## +##.###.##.### +.#.####..#### +....########. +.##..######.. +#.#..#....#.. +.##...####... +#.###.#..#.## +..###.#..#.## +.##..######.. +##.###....### + +#.#.###.. +#.#.#.#.# +#.#.#.#.# +#.#..##.. +#..##...# +....##... +#.#..###. +##...#.## +##...#.## +#.#..###. +....##... +#..##...# +#.#..##.. + +.....##..###..# +##..#..##.##... +.##...##..#..## +.#..###.##.##.# +.#..###.##.##.# +.##...##..#..## +#...#..##.##... +.....##..###..# +#.###.......#.# +##..##...#.#### +##..##...#.#### +#.###.......#.# +.....##..###..# + +#........ +..#.####. +..#..##.. +##....... +####....# +##....... +...###### +..##.##.# +#####..## + +##......##### +#.######.##.. +#..####..##.. +..##..##...## +##......###.. +.#.#..#.#.... +##..##..###.. +.#.#..#.#.### +##########.## +..#....#..#.. +.##.##.##.... +#..####..#... +#.#.##.#.#... +#.#.##.###... +....##....### +###....###... +##.#..#.###.. + +....###...####... +.##.#.#..##..##.. +......##...##...# +#..##.####.##.### +.#...#..#.#..#.#. +.##.#.###......## +#..##..###....### +.##.#..###.##.### +.##...#..#.##.#.. +........#.####.#. +####.###.#.##.#.# +####..#.########. +######...######.. +.....###...##...# +#..#.##.########. + +###..####.. +......##... +......##... +###..####.. +...#..##..# +#..#.####.# +##.#.####.# +.##.#.##.#. +..#........ +#..##....## +..#.#....#. +..#........ +#..#....#.# +.#....##... +#.#...##... + +###......###. +####....##### +..#..##..#.#. +....####....# +#.##....##.## +.##.#..#.##.. +...##..##.... +#.##.##.##.#. +#.##.##.##.#. +...##..##.... +.##.#..#.##.. + +.##.....#..#. +....####....# +.#.####.#..#. +##.#...#....# +##.....#....# +##.##..#....# +..#..#...##.. +..#..#...##.. +##.##..#....# +##.....#....# +##.#...#....# +.#.####.#..#. +....####....# +.##.....#..#. +.#..###..#... + +...#...###### +.###....##### +..##....#.... +#.#.#.##.#..# +##.##..#.#### +##.....#.#### +..#.##...#..# +.#.......#..# +##..##.#.#### +##...#.#.#### +.#.......#..# + +.#.###..#.##. +.#.###..#.##. +..#...#...### +##.....#.##.. +#.#.#....#..# +###....#..... +.#.###.#...#. +########..#.# +##.#####..#.# + +#.#....#....#.. +######.#....#.# +.#####.######.# +##....#.#..#.#. +.##...####.###. +....#..######.. +#######.#..#.## +.......#.##.#.. +.###....#..#... +#..##.#..##..#. +.#.##.###..###. +...##..######.. +...##..######.. + +.#.####.#.....#.# +...#..#...#...##. +###....###.#.#.## +#.#.##.#.#.#.#... +##.####.#####..## +##.#..#.####...## +#######.##.#..##. +##..##..####.#..# +#..####..#....##. +#.######.#.##..#. +##########.####.# +#.#.##.#.##.##..# +..#....#..####.#. +#........#..####. +..######....#.### +..######....#.### +#........#..####. + +#.#..#..##..# +#.#..#..##..# +.###...#..#.. +.#.##..####.. +.###.#......# +...#..######. +...###.#..#.# +###.....##... +###.##......# +#...##.##.#.# +..##..#.##.#. + +.#....#.#.#..#. +##.####.##.#..# +.#..#.#.##..##. +.#..#.#.##..##. +##.####.##.#..# +.#..#.#.#.#..#. +...#..#.###..#. +..##....#.#.#.# +##.#.#..##..##. +..###.#..##..## +#.#..##.##.#... +..#..###...###. +#..#...####.### +...#.#.#.###.#. +...#..#...##..# +...#..#...##..# +...#.#.#.###.#. + +..#.#.###...#.##. +#####...###...#.. +#...#..#.#..##.#. +#...#..#.#..##.#. +#####...###...#.. +..#.#.###...#.##. +.#.##......#.#... +.........#..##... +####.#...#....#.# +.#..##.###....##. +.#..##.###....##. +####.#...#....#.# +.........#..##... +.#.##......#.#..# +..#.#.###...#.##. + +#..#.#.#..##..##. +.#..#.##..##..##. +#....#.#....##... +..##..#####.##.## +#....#.###..##..# +..##..#.#..####.. +######.#.#.#..#.# +#.##.#..#...##... +#.##.#....##..##. +..##..###.######. +##..####..#....#. +##..##...#..##..# +##..###..##.##.## +##..######.####.# +..##......#....#. + +##..###.# +..##.##.. +###.#...# +####.#### +###..###. +...##.... +...##.... +###..###. +####.#### +###.#..## +..##.##.. +##..###.# +######... +....#..## +######.## + +..###.####....... +##..####.###.##.. +#.....#..##.####. +#.##.##..#.##..## +.#####.#.#.#.##.# +##....##...###### +####....##.###### +#.#####.##.#.##.# +...#.###..#..##.. +....##.......##.. +....##.......##.. +...#.###..#..##.. +#.#####.##.#.##.# +####....##.###### +##....##...###### +.#####.#.#.#.##.# +#.##.##..#.##..## + +.#.##.#.##. +.#.##.#.##. +#.#..#.#### +.######.#.# +##....###.# +.#.##.#.##. +#.#..#.#.## +#.####.##.# +..#.....### + +..#####.... +..###..#### +..#..#.#... +#..#..##..# +..##..#.... +#..#..##..# +.####...... +..######..# +...#.#.#### +#.##.#.#..# +..#..#.#..# +..#..#..##. +..#..#..##. + +#....##....## +###......#### +#..#....#..## +#.#.#..#.#.## +#.###..###.## +###.#..#.#### +.#........#.. +##.######.### +#..##..##..## +.####..####.. +#.#..##..#.## +#.#.#..#.#.## +#.##....##.## +##.######.### +..#.####.#... +###..##.##### +##...##...### + +.#.####...### +##.###.#.##.. +#...##..#.### +#...##..#.### +##..##.#.##.. +.#.####...### +#.#...#.##... +...#.......## +####.##.#.#.. + +..#.#.. +##..#.. +##..#.. +...#### +####.## +....#.. +#####.. +#..##.. +.....## +..##... +....#.. +##..### +...##.. + +.##..#...#.#. +.##..#...#.#. +.....#..####. +.##.#.#..###. +.##...#..#..# +#####.##.#.#. +#.##.#..#.#.# + +#....##...#.##. +#....#...###..# +.####.##.##.... +..##...######## +##..##..##.#..# +#.##.#.....#..# +..##..#.....#.. diff --git a/src/test/resources/2023/input_13_test.txt b/src/test/resources/2023/input_13_test.txt new file mode 100644 index 00000000..f226414e --- /dev/null +++ b/src/test/resources/2023/input_13_test.txt @@ -0,0 +1,15 @@ +#.##..##. +..#.##.#. +##......# +##......# +..#.##.#. +..##..##. +#.#.##.#. + +#...##..# +#....#..# +..##..### +#####.##. +#####.##. +..##..### +#....#..# \ No newline at end of file