[백준] 좋은 자동차 번호판 (1871)(kotlin)
문제 설명
입력 및 출력
» 입력
첫째 줄에 번호판의 수 N (1 ≤ N ≤ 100)이 주어진다. 다음 N개 줄에는 자동차 번호판이 LLL-DDDD 형식으로 주어진다.
» 출력
각각의 자동차 번호판에 대해서, 좋은 번호판이면 “nice”를, 아니면 “not nice”를 출력한다.
예제 입출력(테스트케이스)
입력 | 출력 |
---|---|
2 ABC-0123 AAA-9999 |
nice not nice |
문제 풀이1
import kotlin.math.abs
import kotlin.math.pow
fun main(args: Array<String>) = with(System.`in`.bufferedReader()) {
repeat(readLine().toInt()) {
val licensePlate = readLine().split("-")
val alphabetToInt = licensePlate[0].foldIndexed(0.0) { idx, acc, ch ->
acc + (ch - 'A') * 26.0.pow(2 - idx)
}
println(
if (abs(alphabetToInt - licensePlate[1].toInt()) <= 100) "nice"
else "not nice"
)
}
}