Kotlin/코딩테스트

[프로그래머스] 귤 고르기 - kotlin

깨노비 2023. 4. 11. 23:49
728x90
반응형

경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니다. 그런데 수확한 귤의 크기가 일정하지 않아 보기에 좋지 않다고 생각한 경화는 귤을 크기별로 분류했을 때 서로 다른 종류의 수를 최소화하고 싶습니다.

 

class Solution {
    fun solution(k: Int, tangerine: IntArray): Int {
        var answer: Int = 0
        val map: MutableMap<Int, Int> = mutableMapOf<Int, Int>()

        for (i in tangerine) {
            map[i] = (map[i] ?: 0) + 1
        }

        val countList = map.values.toList().sortedDescending()

        var cnt = 0
        for ((idx, value) in countList.withIndex()) {
            cnt += value
            if (k <= cnt) {
                answer = idx + 1
                break
            }
        }

        return answer
    }
}
728x90
반응형