알고리즘

프로그래머스 - 명예의 전당(1)

최데브 2024. 8. 18. 18:11

문제 설명은 길지만 가수의 점수가 들어올때마다 소팅해주고

명예의 전당에 포함되는 k번째 숫자를 기준으로

그보다 작을때는 소팅된 리스트의 가장 마지막 숫자,

그보다 클때는 소팅된 리스트의 k-1 번째 값을 발표점수 리스트에 추가해주면 된다.

 

class Solution {
    fun solution(k: Int, score: IntArray): IntArray {
        var answer = mutableListOf<Int>()
        var list = mutableListOf<Int>()
        
        score.forEach{
            list.add(it)
            list = list.sorted().reversed().toMutableList()
            if(list.size < k){
                answer.add(list.last())
            }else{
                answer.add(list[k-1])
            }
            
        }

        return answer.toIntArray()
    }
}

 

뚝딱

반응형