알고리즘 문제 풀이/프로그래머스
[Algorithm] 프로그래머스 - 369게임 (Kotlin)
참깨빵위에참깨빵_
2023. 1. 1. 20:26
728x90
반응형
369 게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임이다
말해야 하는 숫자 order가 매개변수로 주어질 때 쳐야 할 박수 횟수를 리턴하는 solution()을 완성하라
단순히 매개변수로 받은 숫자 안에 들어있는 3, 6, 9 개수를 모두 구하면 된다.
29423을 받았다면 9, 3이 하나씩 들어 있으니 2를 리턴하는 solution()을 완성해야 한다.
주먹구구식으로 푼다면 아래와 같다.
class Solution {
fun solution(order: Int): Int {
val a = order.toString().split("")
var answer = 0
for (i in a.indices) {
if (a[i] != "" && (a[i] == "3" || a[i] == "6" || a[i] == "9")) {
answer += 1
}
}
return answer
}
}
이것을 줄인다면 아래처럼 쓸 수 있다.
class Solution {
fun solution(order: Int) = order.toString().map { it.digitToInt() }
.count { it != 0 && it % 3 == 0 }
}
반응형