[프로그래머스] Level 1 - K번째 수

해결방법

array를 commands[0]에서 commands[1] 까지 slice한다. 인덱스가 0부터 시작하니 1을 뺀다.
정렬을 하고 정렬된 배열에서 commands에서 1을 뺀 수를 인덱스로 가지는 수를 결과값으로 한다.

나의 풀이

class Solution {
    fun solution(array: IntArray, commands: Array<IntArray>): IntArray {
        var answer = intArrayOf()
        
        commands.forEach {
            answer += array.sliceArray((it[0] - 1) until it[1]).apply { sort() }[it[2]-1]
        }
        return answer
    }
}

좋은 웹페이지 즐겨찾기