baekjoon: 1431. 시리얼 벟노

kldaji·2021년 12월 27일
1

baekjoon

목록 보기
5/5

문제링크

import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter

fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))
    val bw = BufferedWriter(OutputStreamWriter(System.out))
    val n = br.readLine().toInt()
    val compareLength = compareBy<String> { it.length }
    val compareSum = compareLength.thenBy { s ->
        var sum = 0
        s.forEach { c ->
            if (c in '0'..'9') {
                sum += (c - '0')
            }
        }
        sum
    }
    val compareAlpha = compareSum.thenBy { it }
    val serialNumbers = mutableListOf<String>()
    for (i in 0 until n) {
        serialNumbers.add(br.readLine())
    }
    serialNumbers.sortWith(compareAlpha)
    serialNumbers.forEach { bw.write("${it}\n") }
    br.close()
    bw.close()
}
profile
다양한 관점에서 다양한 방법으로 문제 해결을 지향하는 안드로이드 개발자 입니다.

0개의 댓글