[프로그래머스] K번째 수
배열 array
를 i번째 부터 j번째 까지 자르고 정렬했을 때, k번째에 있는 수를 구한다.
commands
배열의 각 행, 즉 i,j,k
를 잘 뽑아내고 정렬 후 k번째 수를 answer
배열에 넣기만 하면 된다.
i, j, k 명령 수행 시 k번째 수는 ‘하나’가 나오게 된다. commands의 길이는 1~50 이하 이므로 k번째 수를 담는 answer 배열의 크기는 commands.length
만큼 할당해야 한다. 그리고 i, j, k 값들을 각각 치환하여 사용하기 쉽게 만들었다. 또한 i번째 부터 j번-[ys.copyOfRange() 함수를 사용했다. 말 그대로 구간을 정해 copy하는 함수다.
첫번째 인자부터 배열의 주소(이름), 시작 인덱스, 종료 인덱스(종료 인덱스는 구간에 포함하지 않는다.) 이다.
1 | int[] array2 = Arrays.copyOfRange(array,i-1,j); |
Arrays.sort()
해주고, k번째 (k-1번째 index) 수를 answer 배열에 넣고 return 해주면 된다.
1 | import java.util.Arrays; |
[프로그래머스] K번째 수