티스토리 뷰

https://programmers.co.kr/learn/courses/30/lessons/42748?language=java 

 

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

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

programmers.co.kr

  1. answer array 를 생성합니다.
  2. commands 에서 command 를 하나 받아 start end k 를 지정합니다
  3. start, end 를 이용하여 temp 배열을 생성하고 정렬합니다.
  4. temp 배열에서 k 번째로 큰 값을 꺼내 answer 배열에 추가합니다.
import java.util.Arrays;

public class Solution {
    public int[] solution(int[] array, int[][] commands) {
        int[] answer = new int[commands.length];
        int i = 0;
        for (int[] command : commands) {
            int start, end, k;
            start = command[0] - 1;
            end = command[1];
            k = command[2] - 1;

            int[] temp = Arrays.copyOfRange(array, start, end);
            Arrays.sort(temp);

            answer[i++] = temp[k];
        }
        return answer;
    }
}

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함