BE/algorithm

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

bandal-gom 2021. 7. 18. 14:19

문제링크

https://programmers.co.kr/learn/courses/30/lessons/42748

 

코딩테스트 연습 - K번째수

[1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3]

programmers.co.kr

 

문제풀이 

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * K번째수
 * https://programmers.co.kr/learn/courses/30/lessons/42748
 */
public class Solution {

    public int[] solution(int[] array, int[][] commands) {
        List<int[]> list = new ArrayList<>();
        List<Integer> kth = new ArrayList<>();
        for (int[] command : commands) {
            list.add(Arrays.copyOfRange(array, command[0] -1 , command[1]));
            kth.add(command[2]);
        }

        int[] answer = new int[list.size()];
        for (int i = 0; i < list.size(); i++) {
            Arrays.sort(list.get(i));
            answer[i] = list.get(i)[kth.get(i) - 1];
        }
        return answer;
    }
}
반응형