프로그래머스: 배열 조각하기(Python3)

SIMPLY_DAILY·2025년 5월 20일

1. 문제

정수 배열 arr와 query가 주어지고, query를 순회하면서 다음 작업을 반복할 때, 작업을 마친 후 남은 arr의 부분 배열을 return 하는 solution 함수 작성하기

  • 짝수 인덱스에서는 arr에서 query[i]번 인덱스를 제외하고 배열의 query[i]번 인덱스 뒷부분을 잘라서 버림
  • 홀수 인덱스에서는 arr에서 query[i]번 인덱스는 제외하고 배열의 query[i]번 인덱스 앞부분을 잘라서 버림

2. 조건

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

3. 출력 예시

프로세스는 다음과 같다.

4. 코드 구현

1) query 값을 하나씩 순회하는 for반복문 작성하기
2) 인덱스가 짝수일 경우와 홀수일 경우를 나누어 조건문 작성하기
3) 작업을 마친 후의 arr 리스트 반환하기

문제를 푸는 과정에서 테스트에 오류가 발생한 원인은 인덱스 값과 인덱스 간의 혼동이었다.

⚠️ query의 인덱스 값이 아닌 query의 인덱스(위치)가 짝수or홀수일 때, query의 인덱스 값이 arr의 인덱스(위치)가 된다.

https://school.programmers.co.kr/learn/courses/30/lessons/181893#qna

0개의 댓글