diff options
Diffstat (limited to 'aoc-2021-kotlin/src/Day01.kt')
-rw-r--r-- | aoc-2021-kotlin/src/Day01.kt | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/aoc-2021-kotlin/src/Day01.kt b/aoc-2021-kotlin/src/Day01.kt new file mode 100644 index 0000000..4ac1ef7 --- /dev/null +++ b/aoc-2021-kotlin/src/Day01.kt @@ -0,0 +1,24 @@ +object Day01 { + fun part1(input: List<Int>) = + input + .zipWithNext() + .count { it.second > it.first } + + fun part2(input: List<Int>) = + input + .asSequence() + .windowed(3) + .map { it.sum() } + .zipWithNext() + .count { it.second > it.first } +} + +fun main() { + val testInput = readInputAsNumbers("Day01_test") + check(Day01.part1(testInput) == 7) + check(Day01.part2(testInput) == 5) + + val input = readInputAsNumbers("Day01") + println(Day01.part1(input)) + println(Day01.part2(input)) +} |