[프로그래머스] Lv.0 배열 조각하기.java

hgghfgf·2023년 6월 3일
0

프로그래머스

목록 보기
119/227

배열 조각하기.java

import java.util.*;

class Solution {
    public int[] solution(int[] arr, int[] 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;
    }
}

현재 인덱스 i가 짝수인 경우 (i % 2 == 0), arr 배열을 0부터 query[i]까지의 요소로 잘라서(arr 배열의 일부를 복사하여) 새로운 배열로 만듭니다. (Arrays.copyOfRange 사용)
현재 인덱스 i가 홀수인 경우 (i % 2 != 0), arr 배열을 query[i]부터 끝까지의 요소로 잘라서(arr 배열의 일부를 복사하여) 새로운 배열로 만듭니다. (Arrays.copyOfRange 사용)
작업을 수행한 후의 배열을 arr에 다시 할당합니다. 이렇게 함으로써 이전 작업으로 얻은 부분 배열이 다음 작업의 대상이 됩니다.
모든 query를 처리한 후, 최종적으로 arr 배열을 반환합니다.

출처: 프로그래머스 코딩 테스트 연습, https://school.programmers.co.kr/learn/challenges

0개의 댓글