clean
This commit is contained in:
parent
97334d34eb
commit
b3c99e3607
@ -25,26 +25,12 @@ class Day04 : BaseDay() {
|
||||
private fun playBoard(board: List<List<Int>>, numbers: List<Int>): Pair<Int, Int> {
|
||||
for (round in numbers.indices) {
|
||||
val usedNumbers = numbers.take(round)
|
||||
var winning = false
|
||||
for (line in board) {
|
||||
for (line in board + board[0].indices.map { col -> board.map { it[col] } }) {
|
||||
if (usedNumbers.containsAll(line)) {
|
||||
winning = true
|
||||
break
|
||||
val unmarkedNumbers = board.flatten().toMutableSet().also { it.removeAll(usedNumbers) }
|
||||
return round to unmarkedNumbers.sum() * usedNumbers.last()
|
||||
}
|
||||
}
|
||||
if (!winning) {
|
||||
for (i in board[0].indices) {
|
||||
val column = board.map { it[i] }
|
||||
if (usedNumbers.containsAll(column)) {
|
||||
winning = true
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
if (winning) {
|
||||
val unmarkedNumbers = board.flatten().toMutableSet().also { it.removeAll(usedNumbers) }
|
||||
return round to unmarkedNumbers.sum() * usedNumbers.last()
|
||||
}
|
||||
}
|
||||
error("No wins")
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user