입출력 예
arr | query | result |
[0, 1, 2, 3, 4, 5] | [4, 1, 2] | [1, 2, 3] |
입출력 예 설명
입출력 예 #1
- 이번에 매번 처리할
query
의 값과 처리 전후의arr
의 상태를 표로 나타내면 다음과 같습니다.
query의 값 | query 처리 전 | query 처리 후 | 비고 |
4 | [0, 1, 2, 3, 4, 5] | [0, 1, 2, 3, 4] | 0번 인덱스의 쿼리이므로 뒷부분을 자른다. |
1 | [0, 1, 2, 3, 4] | [1, 2, 3, 4] | 1번 인덱스의 쿼리이므로 앞부분을 자른다. |
2 | [1, 2, 3, 4] | [1, 2, 3] | 2번 인덱스의 쿼리이므로 뒷부분을 자른다. |
- 따라서 [1, 2, 3]을 return 합니다.
코드
import java.util.*;
class Solution {
public int[] solution(int[] arr, int[] query) {
// query 배열에 따라 자르기
for (int i = 0; i < query.length; i++) {
if (i % 2 == 0) {
// 짝수 인덱스: 앞에서부터 자르기
arr = Arrays.copyOfRange(arr, 0, query[i] + 1);
} else {
// 홀수 인덱스: 뒤에서부터 자르기
arr = Arrays.copyOfRange(arr, query[i], arr.length);
}
}
// 최종 배열 반환
return arr;
}
}

배열은 Arrays 클래스를
리스트는 stream API 을 사용
Share article