diff --git a/2021/src/main/scala/aoc2021/Day06.scala b/2021/src/main/scala/aoc2021/Day06.scala index df7b246..397c872 100644 --- a/2021/src/main/scala/aoc2021/Day06.scala +++ b/2021/src/main/scala/aoc2021/Day06.scala @@ -5,19 +5,17 @@ import nmcb.predef.* object Day06 extends AoC: - val ages: Map[Int,Long] = - input - .split(",") - .groupMapReduce(_.toInt)(_ => 1L)(_ + _) + val ages: Map[Int, Long] = + input.split(",").groupMapReduce(_.toInt)(_ => 1L)(_ + _) - val FirstSpawnAfter = 8 - val SpawnAfter = 6 + val FirstSpawnAfter = 8 + val SpawnAfter = 6 val SpawnNow = -1 - extension (generation: Map[Int,Long]) + extension (generation: Map[Int, Long]) - def next: Map[Int,Long] = - val aged = generation.map((timer,count) => (timer - 1) -> count) + def next: Map[Int, Long] = + val aged = generation.map((timer, count) => (timer - 1) -> count) val spawned = aged.getOrElse(SpawnNow, 0L) val next = aged.getOrElse(SpawnAfter, 0L) + spawned aged.removed(SpawnNow) + (FirstSpawnAfter -> spawned) + (SpawnAfter -> next)