fun main(args: Array) { println(if(isMuteki()) "YES" else "NO") } fun isMuteki():Boolean { val n = readLine()!!.trim().toInt() val log = (1..n).map { readLine()!!.split(" ").map { it.toInt() - 1 } } val map = Array(9){ arrayOfNulls(9)} val koma = mutableListOf(Koma(0,1,7), Koma(1,2,8), Koma(2, 6,8)) koma.forEach { map[it.y][it.x] = it } log.forEach { val (fromX, fromY, toX, toY) = it val k = map[fromY][fromX]?:(Koma(koma.size, fromX, fromY).also { koma.add(it) }) map[fromY][fromX] = null k.y = toY k.x = toX map[toY][toX] = k } return (map[7][4]?.id ?: -1) == 0 && (map[7][3]?.id ?: -1) == 1 && (map[7][5]?.id ?: -1) == 2 } class Koma(val id:Int, var x:Int = 0, var y:Int = 0)