관리 메뉴

나만을 위한 블로그

[Algorithm] 프로그래머스 - k의 개수 (Kotlin) 본문

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

[Algorithm] 프로그래머스 - k의 개수 (Kotlin)

참깨빵위에참깨빵_ 2023. 1. 31. 20:20
728x90
반응형
1~13까지의 수 중에서 1은 1, 10, 11, 12, 13으로 총 6번 등장한다. 정수 i, j, k가 매개변수로 주어질 때, i~j까지 k가 몇 번 등장하는지 리턴하는 solution()을 완성하라

 

 

주먹구구식으로 푼 코드는 아래와 같다.

 

class Solution {
    fun solution(i: Int, j: Int, k: Int): Int {
        val list = arrayListOf<String>()
        for (num in i .. j) {
            if (num.toString().contains(k.toString())) {
                list.addAll(num.toString().split(""))
            }
        }

        return list.count { it == k.toString() }
    }
}

 

간단하게 줄이면 아래와 같다.

 

class Solution {
    fun solution(i: Int, j: Int, k: Int): Int = (i .. j).joinToString("").count { it.digitToInt() == k }
}

 

반응형
Comments