반응형
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | import java.util.*; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.length]; int [] temp = {}; for(int i =0;i < commands.length;i++) { temp = Arrays.copyOfRange(array,commands[i][0]-1,commands[i][1]); Arrays.sort(temp); answer[i]=temp[commands[i][2]-1]; } return answer; } } | cs |
배열을 slice해서 새로운 배열에 할당하는 메소드인 copyOfRange를 썼다. 주의할 점은 3번째 인자는 exclusive인 것이다. 이것을 못 알아챘었다. 그리고 2차원 배열의 길이를 구하는데 commands.length로 해야지 행의 갯수 즉 2차원 배열에 할당된 배열 갯수가 나오는데 commands[0].length로 해버려서 틀려버렸다. 저런식으로 하면 열의 갯수가 나온다. 이런 기본적인 부분을 숙지 하지 못하니 푸는 방법을 생각해 내도 원하는 답을 구할 수 없다. 항상 기본이 중요하다. 게다가 test case에는 3x3 배열이 나와버려서 저렇게 length를 구해도 통과가 된것이다.... 정말 사소한 부분 까지 교묘하다.
반응형
'프로그래밍 > Algorithm' 카테고리의 다른 글
[백준] 11052번 카드 구매하기 (0) | 2019.01.11 |
---|---|
[백준 알고리즘] 2156 - 포도주 시식 (0) | 2018.11.19 |
[프로그래머스] 모의고사 (0) | 2018.10.21 |
[프로그래머스] 완주하지 못한 선수 (0) | 2018.10.21 |
[알고리즘] 알고리즘 수업내용정리 (0) | 2018.09.10 |