Simplify
This commit is contained in:
parent
782fccc572
commit
399d894c68
@ -16,12 +16,12 @@ class Day03 : BaseDay() {
|
||||
}
|
||||
|
||||
override fun part2(): Any {
|
||||
val oxygenNumbers = findNumber(input.lines.value) { ones, zeros -> if (ones >= zeros) '1' else '0' }
|
||||
val co2Numbers = findNumber(input.lines.value) { ones, zeros -> if (zeros <= ones) '0' else '1' }
|
||||
return oxygenNumbers[0].toInt(2) * co2Numbers[0].toInt(2)
|
||||
val o2 = findNumber(input.lines.value) { ones, zeros -> if (ones >= zeros) '1' else '0' }
|
||||
val co2 = findNumber(input.lines.value) { ones, zeros -> if (zeros <= ones) '0' else '1' }
|
||||
return o2 * co2
|
||||
}
|
||||
|
||||
private fun findNumber(input: List<String>, keep: (Int, Int) -> Char): List<String> {
|
||||
private fun findNumber(input: List<String>, keep: (Int, Int) -> Char): Int {
|
||||
var numbers = input
|
||||
for (i in this.input.lines.value[0].indices) {
|
||||
if (numbers.size == 1) break
|
||||
@ -31,7 +31,6 @@ class Day03 : BaseDay() {
|
||||
val maj = keep(ones, zeros)
|
||||
numbers = numbers.filter { it[i] == maj }
|
||||
}
|
||||
return numbers
|
||||
return numbers[0].toInt(2)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user