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

2020. 6. 19. 17:43프로그래머스/LEVEL 1

import java.util.*;

class Solution {
    public int[] solution(int[] array, int[][] commands) {
        int[] answer = new int[commands.length];
        
        for(int i=0; i<commands.length; i++){
           int[] targetArray = Arrays.copyOfRange(array,commands[i][0]-1,commands[i][1]);
           Arrays.sort(targetArray);
           answer[i] = targetArray[commands[i][2]-1];
        }
        
        return answer;
    }
}

1. commands를 돌면서 주어진 array를 인덱스에 맞게 잘라서 저장할 tartetArray를 만들고 copyOfRange 메소드를 사용하여 배열을 잘라 복사한다.

2. 만들어진 targetArray를 정렬하고, commmands에 주어진 3번째 인덱스 값에 해당하는 값을 answer에 저장한다.