Day06 2021
This commit is contained in:
parent
c3e8e6320e
commit
5bb873bcc5
27
2021/src/main/kotlin/Day06.kt
Normal file
27
2021/src/main/kotlin/Day06.kt
Normal file
@ -0,0 +1,27 @@
|
||||
package be.vandewalleh.aoc.days
|
||||
|
||||
import be.vandewalleh.aoc.utils.BaseDay
|
||||
import be.vandewalleh.aoc.utils.input.Day
|
||||
|
||||
@Day
|
||||
class Day06 : BaseDay() {
|
||||
override fun part1() = run(80)
|
||||
override fun part2() = run(256)
|
||||
|
||||
private fun run(days: Int): Long {
|
||||
var fish = LongArray(9)
|
||||
input.csv.ints.forEach { fish[it] = fish[it] + 1 }
|
||||
|
||||
var newFish: LongArray
|
||||
for (day in 1..days) {
|
||||
newFish = LongArray(9)
|
||||
for (timer in 8 downTo 1) {
|
||||
newFish[timer - 1] = fish[timer]
|
||||
}
|
||||
newFish[8] = fish[0]
|
||||
newFish[6] = fish[0] + newFish[6]
|
||||
fish = newFish
|
||||
}
|
||||
return fish.sum()
|
||||
}
|
||||
}
|
||||
1
2021/src/main/resources/day06.txt
Normal file
1
2021/src/main/resources/day06.txt
Normal file
@ -0,0 +1 @@
|
||||
1,1,3,1,3,2,1,3,1,1,3,1,1,2,1,3,1,1,3,5,1,1,1,3,1,2,1,1,1,1,4,4,1,2,1,2,1,1,1,5,3,2,1,5,2,5,3,3,2,2,5,4,1,1,4,4,1,1,1,1,1,1,5,1,2,4,3,2,2,2,2,1,4,1,1,5,1,3,4,4,1,1,3,3,5,5,3,1,3,3,3,1,4,2,2,1,3,4,1,4,3,3,2,3,1,1,1,5,3,1,4,2,2,3,1,3,1,2,3,3,1,4,2,2,4,1,3,1,1,1,1,1,2,1,3,3,1,2,1,1,3,4,1,1,1,1,5,1,1,5,1,1,1,4,1,5,3,1,1,3,2,1,1,3,1,1,1,5,4,3,3,5,1,3,4,3,3,1,4,4,1,2,1,1,2,1,1,1,2,1,1,1,1,1,5,1,1,2,1,5,2,1,1,2,3,2,3,1,3,1,1,1,5,1,1,2,1,1,1,1,3,4,5,3,1,4,1,1,4,1,4,1,1,1,4,5,1,1,1,4,1,3,2,2,1,1,2,3,1,4,3,5,1,5,1,1,4,5,5,1,1,3,3,1,1,1,1,5,5,3,3,2,4,1,1,1,1,1,5,1,1,2,5,5,4,2,4,4,1,1,3,3,1,5,1,1,1,1,1,1
|
||||
13
2021/src/test/kotlin/Day06Test.kt
Normal file
13
2021/src/test/kotlin/Day06Test.kt
Normal file
@ -0,0 +1,13 @@
|
||||
package be.vandewalleh.aoc.days
|
||||
|
||||
class Day06Test : BaseDayTest(6) {
|
||||
override val example = """
|
||||
3,4,3,1,2
|
||||
""".trimIndent()
|
||||
|
||||
override val part1Example = 5934L
|
||||
override val part1Answer = 373378L
|
||||
|
||||
override val part2Example = 26984457539
|
||||
override val part2Answer = 1682576647495
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user