프로그래머스 - 같은 숫자는 싫어
같은 숫자는 싫어 문제 바로가기 나의 풀이 def solution(arr): answer = [arr[0]] from collections import deque arr = deque(arr[1:]) while arr: temp = arr.popleft() if temp != answer[-1]: answer.append(temp) return answer 고수의 풀이 def no_continuous(s): a = [] for i in s: if a[-1:] == [i]: continue a.append(i) return a CODE REVIEW queue을 활용한 문제. for문으로 arr의 원소 하나씩 뽑아올수도 있겠지만, 시간초과우려가 있기에 deque을 활용했다. arr.pop(0)보다 deque을 이용해서 arr.popleft()가 탐색 속도가 빠르다. answer = [arr[0]] arr = deque(arr[1:])로 설정하지 않으면 indexError가 발생하기 때문에 주의해야 한다. 이런 indexError을 효과적으로 방지하기 위해 고수의 풀이에서는 a[-1:]을 이용했다.