728x90
https://programmers.co.kr/learn/courses/30/lessons/42748?language=java
분명 그렇게 어렵지 않은 문제인듯 한데...
참... 항상 제 로직대로 풀다보면 코드가 더러워 진단말이죠 ㅠㅠㅠㅠㅠ
그래서 어떻게 하면 깔끔하게 코드를 짤까 하다가 copyOfRange라는 메소드를 공부하게 되었습니다.
import java.util.*;
class Solution {
public int[] solution(int[] array, int[][] commands) {
int[] answer = new int [commands.length];
for(int i = 0; i < commands.length; i++){
int[] tmp = Arrays.copyOfRange(array, commands[i][0]-1, commands[i][1]);
Arrays.sort(tmp);
answer[i] = tmp[commands[i][2]-1];
}
return answer;
}
}
이 코드에서 핵심은
int[] tmp = Arrays.copyOfRange(array, commands[i][0]-1, commands[i][1]);
입니다.
array라는 배열을 , commands[i][0]-1번째 인덱스부터 commands[i][1]까지 복사하는거죠!
728x90
'알고리즘 > Programmers' 카테고리의 다른 글
[Programmers_Java] 모의고사 - 완전탐색 (0) | 2021.07.29 |
---|---|
[Programmers_Java] 크레인 인형뽑기 게임(2019 카카오 인턴십) (0) | 2021.07.28 |
[Programmers_Java] 2016 (0) | 2021.07.26 |
[Programmers_Java] 체육복 (0) | 2021.07.25 |
[Programmers_Java] 숫자 문자열과 영단어 - 2021 카카오 채용 연계형 인턴십 (0) | 2021.07.22 |