코딩테스트 연습에 공개된 문제는 (주)그렙이 저작권을 가지고 있습니다.
(지문 하단에 별도 저작권 표시 문제 제외)
코딩테스트 연습 문제의 지문, 테스트케이스, 풀이 등과 같은 정보는 비상업적, 비영리적 용도로 게시할 수 있습니다.

코딩테스트 정보

  • 프로그래머스
  • python
  • level 1
  • 점수 : 캡쳐 못함
  • 문제 링크


문제

배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다.
이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다.
단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다.

예를 들면,
arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다.
arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다.

입출력 예

arr answer
[1,1,3,3,0,1,1] [1,3,0,1]
[4,4,4,3,3] [4,3]


풀이 코드

풀이 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
def solution(arr):
    answer = []

    for i, atom in enumerate(arr):
      if len(answer) < 1:
        answer.append(atom)
      elif atom == arr[i-1]:
        pass
      else:
        answer.append(atom)

    return answer


풀이 방식

■■■■ 문제 요약 ■■■■

원 리스트를 토대로 연속 중복이 없는 리스트를 만드는 것이다.
(순서는 동일해야 함)

■■■■ 접근 방식 ■■■■

별도의 접근 방식 없이, 문제가 의도하는대로 풀이를 진행