Kotlin/코딩테스트
[프로그래머스] 대충 만든 자판 - kotlin
깨노비
2023. 4. 3. 00:14
728x90
반응형
휴대폰의 자판은 컴퓨터 키보드 자판과는 다르게 하나의 키에 여러 개의 문자가 할당될 수 있습니다. 키 하나에 여러 문자가 할당된 경우, 동일한 키를 연속해서 빠르게 누르면 할당된 순서대로 문자가 바뀝니다.
import kotlin.math.min
class Solution {
fun solution(keymap: Array<String>, targets: Array<String>): IntArray {
val answer = mutableListOf<Int>()
val map = mutableMapOf<Char, Int>()
for (key in keymap) {
for ((idx, value) in key.withIndex()) {
val cnt = idx + 1
map[value] = min(map[value] ?: cnt, cnt)
}
}
for (target in targets) {
var sum = 0
for (chr in target.toList()) {
if (map[chr] == null) {
sum = -1
break
}
sum += map[chr]!!
}
answer.add(sum)
}
return answer.toIntArray()
}
}
728x90
반응형