[BOJ 실버4] 화살표 그리기

JIHOON·2022년 6월 24일
0

문제

코드

fun main() = with(System.`in`.bufferedReader()){
    val n = readLine().toInt()
    val list = Array(n+1){
        ArrayList<Int>()
    }
    repeat(n){
        val (x,y) = readLine().split(" ").map{it.toInt()}
        list[y].add(x)
    }
    list.forEach{
        it.sort()
    }
    var sum = 0
    list.forEach{
        it.forEachIndexed{ idx, v ->
            if(idx==it.lastIndex){
                sum += (v-it[idx-1])
            }
            else if(idx==0){
                sum += it[idx+1] - v
            }
            else{
                sum += Math.min(it[idx+1] - v,v-it[idx-1])
            }
        }
    }
    println(sum)
}
profile
https://github.com/Userz1-redd

0개의 댓글