본문 바로가기

Programmers/Level1

K번째수

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
import java.util.ArrayList;
import java.util.Collections;
 
class Solution {
    public int[] solution(int[] array, int[][] commands) {
        int[] answer = {};
        
        ArrayList<Integer> tmpList = new ArrayList<>();
        ArrayList<Integer> ansList = new ArrayList<>();
 
        for (int i = 0; i < commands.length; i++) {
            for (int j = commands[i][0- 1; j < commands[i][1]; j++)
                tmpList.add(array[j]);
 
            Collections.sort(tmpList);
            ansList.add(tmpList.get(commands[i][2- 1));
 
            tmpList.clear();
        }
        answer = new int[ansList.size()];
 
        for (int i = 0; i < answer.length; i++)
            answer[i] = ansList.get(i);
        
        return answer;
    }
}
cs

 

배열을 복사하는 더 간단한 함수가 존재했다.

Arrays.copyOfRange(array, 1, 4)와 같이 사용하면 array 배열의 인덱스 1부터 3까지의 값을 복사하여 배열 형태로 반환한다.

또한 배열도 Arrays.sort(array)와 같이 바로 정렬할 수 있다.

 

'Programmers > Level1' 카테고리의 다른 글

모의고사  (0) 2021.06.28
소수 만들기  (0) 2021.06.24
체육복  (0) 2021.06.23
모든 레코드 조회하기  (0) 2021.06.22
폰켓몬  (0) 2021.06.22