관리 메뉴

나만을 위한 블로그

[Algorithm] 프로그래머스 - 369게임 (Kotlin) 본문

알고리즘 문제 풀이/프로그래머스

[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 }
}
반응형
Comments