문제링크
fun main() {
val bufferedReader = System.`in`.bufferedReader()
val bufferedWriter = System.out.bufferedWriter()
val k = bufferedReader.readLine().toInt()
val lengths = mutableListOf<Int>()
var maxHorizontalLength = 0
var maxVerticalLength = 0
var maxHorizontalIndex = 0
var maxVerticalIndex = 0
repeat(6) { index ->
val (direct, length) = bufferedReader.readLine().split(" ").map { it.toInt() }
lengths.add(length)
when (direct) {
1, 2 -> {
if (maxHorizontalLength < length) {
maxHorizontalLength = length
maxHorizontalIndex = index
}
}
else ->
if (maxVerticalLength < length) {
maxVerticalLength = length
maxVerticalIndex = index
}
}
}
val smallRectangle = if ((maxHorizontalIndex + 1) % 6 == maxVerticalIndex) {
lengths[(maxVerticalIndex + 2) % 6] * lengths[(maxVerticalIndex + 3) % 6]
} else {
lengths[(maxHorizontalIndex + 2) % 6] * lengths[(maxHorizontalIndex + 3) % 6]
}
val largeRectangle = maxHorizontalLength * maxVerticalLength
bufferedWriter.write("${(largeRectangle - smallRectangle) * k}")
bufferedReader.close()
bufferedWriter.close()
}
주석 없는 코드를 만들기 위해 노력하는 개발자입니다.
혹시라도 의도가 분명하지 않아보이는 (이해가 되지 않는) 코드가 있으시다면 편하게 답변 달아주시면 정말 감사하겠습니다.