diff --git a/src/Utils.kt b/src/Utils.kt index 879a2c7..87aec90 100644 --- a/src/Utils.kt +++ b/src/Utils.kt @@ -2,7 +2,9 @@ import java.io.File import java.math.BigInteger import java.security.MessageDigest -private fun openFile(day: Int, name: String) = File("src/day%02d".format(day), "$name.txt") +var year: Int = 2021 + +private fun openFile(day: Int, name: String) = File("src/year%4d/day%02d".format(year, day), "$name.txt") /** * Reads lines from the given input txt file. diff --git a/src/day01/Day01.kt b/src/year2021/day01/Day01.kt similarity index 83% rename from src/day01/Day01.kt rename to src/year2021/day01/Day01.kt index 980d48a..c1843b5 100644 --- a/src/day01/Day01.kt +++ b/src/year2021/day01/Day01.kt @@ -1,4 +1,4 @@ -package day01 +package year2021.day01 import readInputAsInts @@ -6,7 +6,7 @@ fun main() { fun part1(input: List): Int = input.windowed(2).count { it[0] < it[1] } fun part2(input: List): Int = input.windowed(4).count { it[0] < it[3] } - val testInput = readInputAsInts(1, "test_input") + val testInput = readInputAsInts(1, "sample") val input = readInputAsInts(1, "input") check(part1(testInput) == 7) diff --git a/src/day01/test_input.txt b/src/year2021/day01/sample.txt similarity index 100% rename from src/day01/test_input.txt rename to src/year2021/day01/sample.txt diff --git a/src/day02/Day02.kt b/src/year2021/day02/Day02.kt similarity index 96% rename from src/day02/Day02.kt rename to src/year2021/day02/Day02.kt index 4ae3317..4e8a458 100644 --- a/src/day02/Day02.kt +++ b/src/year2021/day02/Day02.kt @@ -1,4 +1,4 @@ -package day02 +package year2021.day02 import readInput @@ -50,7 +50,7 @@ fun part2(input: List): Int { } fun main() { - val testInput = toCommands(readInput(2, "test_input")) + val testInput = toCommands(readInput(2, "sample")) val input = toCommands(readInput(2, "input")) check(part1(testInput) == 150) diff --git a/src/day02/test_input.txt b/src/year2021/day02/sample.txt similarity index 100% rename from src/day02/test_input.txt rename to src/year2021/day02/sample.txt diff --git a/src/day03/Day03.kt b/src/year2021/day03/Day03.kt similarity index 94% rename from src/day03/Day03.kt rename to src/year2021/day03/Day03.kt index 2edeedd..18a7852 100644 --- a/src/day03/Day03.kt +++ b/src/year2021/day03/Day03.kt @@ -1,4 +1,4 @@ -package day03 +package year2021.day03 import readInput @@ -44,7 +44,7 @@ fun part2(input: List>): Int { } fun main() { - val testInput = toBits(readInput(3, "test_input")) + val testInput = toBits(readInput(3, "sample")) val input = toBits(readInput(3, "input")) check(part1(testInput) == 198) diff --git a/src/day03/test_input.txt b/src/year2021/day03/sample.txt similarity index 100% rename from src/day03/test_input.txt rename to src/year2021/day03/sample.txt diff --git a/src/day04/Day04.kt b/src/year2021/day04/Day04.kt similarity index 97% rename from src/day04/Day04.kt rename to src/year2021/day04/Day04.kt index 9d66b63..cc73f64 100644 --- a/src/day04/Day04.kt +++ b/src/year2021/day04/Day04.kt @@ -1,4 +1,4 @@ -package day04 +package year2021.day04 import readInput @@ -75,7 +75,7 @@ fun part2(input: Bingo): Int { } fun main() { - val testInput = Bingo(readInput(4, "test_input")) + val testInput = Bingo(readInput(4, "sample")) val input = Bingo(readInput(4, "input")) check(part1(testInput) == 4512) diff --git a/src/day04/test_input.txt b/src/year2021/day04/sample.txt similarity index 100% rename from src/day04/test_input.txt rename to src/year2021/day04/sample.txt diff --git a/src/day05/Day05.kt b/src/year2021/day05/Day05.kt similarity index 95% rename from src/day05/Day05.kt rename to src/year2021/day05/Day05.kt index f792482..f2799d9 100644 --- a/src/day05/Day05.kt +++ b/src/year2021/day05/Day05.kt @@ -1,4 +1,4 @@ -package day05 +package year2021.day05 import readInput @@ -56,7 +56,7 @@ fun findOverlaps(input: List): Int { } fun main() { - val testInput = readInput(5, "test_input").map { readVector(it) } + val testInput = readInput(5, "sample").map { readVector(it) } val input = readInput(5, "input").map { readVector(it) } check(findOverlaps(testInput.filter { it.horizontalOrVertical }) == 5) diff --git a/src/day05/test_input.txt b/src/year2021/day05/sample.txt similarity index 100% rename from src/day05/test_input.txt rename to src/year2021/day05/sample.txt diff --git a/src/day06/Day06.kt b/src/year2021/day06/Day06.kt similarity index 86% rename from src/day06/Day06.kt rename to src/year2021/day06/Day06.kt index 83c5dd2..a7d39db 100644 --- a/src/day06/Day06.kt +++ b/src/year2021/day06/Day06.kt @@ -1,4 +1,4 @@ -package day06 +package year2021.day06 import readInputAsCommaSeparatedInts @@ -11,7 +11,7 @@ fun howManyAfter(input: List, days: Int): Long = .sum() fun main() { - val testInput = readInputAsCommaSeparatedInts(6, "test_input") + val testInput = readInputAsCommaSeparatedInts(6, "sample") val input = readInputAsCommaSeparatedInts(6, "input") check(howManyAfter(testInput, 80) == 5934.toLong()) diff --git a/src/day06/test_input.txt b/src/year2021/day06/sample.txt similarity index 100% rename from src/day06/test_input.txt rename to src/year2021/day06/sample.txt diff --git a/src/day07/Day07.kt b/src/year2021/day07/Day07.kt similarity index 88% rename from src/day07/Day07.kt rename to src/year2021/day07/Day07.kt index 09400d6..42aec12 100644 --- a/src/day07/Day07.kt +++ b/src/year2021/day07/Day07.kt @@ -1,4 +1,4 @@ -package day07 +package year2021.day07 import readInputAsCommaSeparatedInts import kotlin.math.absoluteValue @@ -20,7 +20,7 @@ fun part2(input: List): Int = (input.average().toInt()).let { average -> } fun main() { - val testInput = readInputAsCommaSeparatedInts(7, "test_input").sorted() + val testInput = readInputAsCommaSeparatedInts(7, "sample").sorted() val input = readInputAsCommaSeparatedInts(7, "input").sorted() check(part1(testInput) == 37) diff --git a/src/day07/test_input.txt b/src/year2021/day07/sample.txt similarity index 100% rename from src/day07/test_input.txt rename to src/year2021/day07/sample.txt