코딩테스트

코테 Lv0 - 배열 조각하기

Beekei 2024. 11. 23. 23:30
반응형

문제 설명

정수 배열 arr와 query가 주어집니다.

query를 순회하면서 다음 작업을 반복합니다.

짝수 인덱스에서는 arr에서 query[i]번 인덱스를 제외하고 배열의 query[i]번 인덱스 뒷부분을 잘라서 버립니다.

홀수 인덱스에서는 arr에서 query[i]번 인덱스는 제외하고 배열의 query[i]번 인덱스 앞부분을 잘라서 버립니다.

위 작업을 마친 후 남은 arr의 부분 배열을 return 하는 solution 함수를 완성해 주세요.

제한사항

  • 5 ≤ arr의 길이 ≤ 100,000
  • 0 ≤ arr의 원소 ≤ 100
  • 1 ≤ query의 길이 < min(50, arr의 길이 / 2)
  • query의 각 원소는 0보다 크거나 같고 남아있는 arr의 길이 보다 작습니다.

입출력 예

Input : [0, 1, 2, 3, 4, 5](arr) [4, 1, 2](query) / Ouput : [1, 2, 3]

제출코드

import java.util.Arrays;

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;
    }
}

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/181893

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

반응형