728x90
문제
나의 풀이
class Solution {
fun solution(word: String): Int {
var answer = 0
val dicNum: MutableList<Int> = mutableListOf(1)
//todo A:1 E:2 I:3 O:4 U:5
var i = 1
while (true) {
if (dicNum == mutableListOf(5, 5, 5, 5, 5)) break
else if (wordization(dicNum) == word) break
else if (dicNum.size < 5) dicNum.add(1)
else if (dicNum[dicNum.lastIndex] >= 5) {
while (dicNum[dicNum.lastIndex] >= 5) {
dicNum.removeAt(dicNum.lastIndex)
}
dicNum[dicNum.lastIndex]++
}
else if (dicNum[dicNum.lastIndex] < 5) {
dicNum[dicNum.lastIndex]++
}
i++
}
answer = i
return answer
}
private fun wordization(dicNum: MutableList<Int>): String {
var wordOfNumber = ""
for(k in 0 until dicNum.size) {
wordOfNumber +=
when (dicNum[k]) {
1 -> 'A'
2 -> 'E'
3 -> 'I'
4 -> 'O'
else -> 'U'
}
}
return wordOfNumber
}
}
728x90
'알고리즘 > 문제' 카테고리의 다른 글
[프로그래머스][kotlin] 키패드 누르기 (0) | 2021.04.08 |
---|---|
[프로그래머스][kotlin] 3진법 뒤집기 (0) | 2021.04.06 |
[프로그래머스] [kotlin] 신규 아이디 추천 (0) | 2021.04.03 |
[프로그래머스][kotlin] 크레인 인형뽑기 게임 (0) | 2021.04.02 |
[프로그래머스][kotlin] 두 개 뽑아서 더하기 (0) | 2021.03.31 |
댓글