day4 (kotlin-ify)
This commit is contained in:
parent
cdad4691f0
commit
94a057e001
|
|
@ -1,6 +1,4 @@
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.lang.Integer.max
|
|
||||||
import java.lang.Integer.min
|
|
||||||
|
|
||||||
fun main() {
|
fun main() {
|
||||||
println("Hello day4!")
|
println("Hello day4!")
|
||||||
|
|
@ -19,20 +17,20 @@ fun solveDay4() {
|
||||||
|
|
||||||
fun conpleteOverlap(line: String): Boolean {
|
fun conpleteOverlap(line: String): Boolean {
|
||||||
val number = "(\\d+)-(\\d+),(\\d+)-(\\d+)".toRegex()
|
val number = "(\\d+)-(\\d+),(\\d+)-(\\d+)".toRegex()
|
||||||
val l = number.find(line)!!.groupValues.stream().skip(1).map { Integer.valueOf(it) }.toList()
|
val l = number.find(line)!!.groupValues.drop(1).map { Integer.valueOf(it) }
|
||||||
|
|
||||||
val min = min(l[0], l[2])
|
val min = minOf(l[0], l[2])
|
||||||
val max = max(l[1], l[3])
|
val max = maxOf(l[1], l[3])
|
||||||
|
|
||||||
return (min == l[0] && max == l[1]) || (min == l[2] && max == l[3])
|
return (min == l[0] && max == l[1]) || (min == l[2] && max == l[3])
|
||||||
}
|
}
|
||||||
|
|
||||||
fun partialOverlap(line: String): Boolean {
|
fun partialOverlap(line: String): Boolean {
|
||||||
val number = "(\\d+)-(\\d+),(\\d+)-(\\d+)".toRegex()
|
val number = "(\\d+)-(\\d+),(\\d+)-(\\d+)".toRegex()
|
||||||
val l = number.find(line)!!.groupValues.stream().skip(1).map { Integer.valueOf(it) }.toList()
|
val l = number.find(line)!!.groupValues.drop(1).map { Integer.valueOf(it) }.toList()
|
||||||
|
|
||||||
val max = max(l[0], l[2])
|
val max = maxOf(l[0], l[2])
|
||||||
val min = min(l[1], l[3])
|
val min = minOf(l[1], l[3])
|
||||||
|
|
||||||
return min >= max
|
return min >= max
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue