2021-12-04 00:15:03 +01:00
|
|
|
fun main() {
|
2021-12-04 13:26:57 +01:00
|
|
|
fun part1(input: List<Int>): Int {
|
|
|
|
return input.windowed(2).count { it[0] < it[1] }
|
2021-12-04 00:15:03 +01:00
|
|
|
}
|
|
|
|
|
2021-12-04 13:26:57 +01:00
|
|
|
fun part2(input: List<Int>): Int {
|
|
|
|
return part1(input.windowed(3).map { it.sum() }.toList())
|
2021-12-04 00:15:03 +01:00
|
|
|
}
|
|
|
|
|
2021-12-04 13:26:57 +01:00
|
|
|
val testInput = readInputAsInts("Day01_test")
|
|
|
|
val input = readInputAsInts("Day01")
|
2021-12-04 00:15:03 +01:00
|
|
|
|
2021-12-04 13:26:57 +01:00
|
|
|
check(part1(testInput) == 7)
|
2021-12-04 00:15:03 +01:00
|
|
|
println(part1(input))
|
2021-12-04 13:26:57 +01:00
|
|
|
|
|
|
|
check(part2(testInput) == 5)
|
2021-12-04 00:15:03 +01:00
|
|
|
println(part2(input))
|
|
|
|
}
|