🗒 문제


📝 나의 문제풀이
class Solution {
fun solution(age: Int): String {
val letters = ('a'..'z').toList()
return age.toString().map{ letters[it.digitToInt()] }.joinToString("")
}
}
🖊 문제 풀이 시 알면 좋을 것
'a'..'z'
- 용도: 문자(Char) 범위를 나타냄
- 'a'..'z' → 'a'부터 'z'까지 연속된 문자 범위
- toList() → 범위를 리스트로 변환
val letters = ('a'..'z').toList()
println(letters)
// [a, b, c, d, e, ..., z]
문제에서 0 → 'a', 1 → 'b', ... 9 → 'j' 매핑할 때 사용
2️⃣ age.toString()
- 용도: 숫자(Int) → 문자열(String) 변환
- 이유: 숫자를 문자 단위로 하나씩 처리하려면 문자열로 바꿔야 함
val age = 23
println(age.toString()) // "23"
4️⃣ it.digitToInt()
- 용도: **문자(Char)를 숫자(Int)**로 변환
- '0' → 0, '1' → 1, ... '9' → 9
val c = '5'
println(c.digitToInt()) // 5
- 문제에서는 문자열에서 각 숫자를 letters 리스트 인덱스로 사용
5️⃣ letters[it.digitToInt()]
- 용도: 숫자를 알파벳 문자로 변환
- 예: 숫자 0 → letters[0] → 'a'
val letters = ('a'..'z').toList()
val num = '3'.digitToInt()
println(letters[num]) // 'd'
반응형
'코딩테스트' 카테고리의 다른 글
| [프로그래머스] 중복된 문자 제거 (0) | 2025.12.22 |
|---|---|
| [프로그래머스] 369게임 (1) | 2025.12.21 |
| [프로그래머스] 대문자와 소문자 (0) | 2025.12.21 |
| [프로그래머스] 숫자 찾기 (0) | 2025.12.21 |
| [프로그래머스] 인덱스 바꾸기 (0) | 2025.12.21 |