
아래 프로그래머스 로고를 클릭하면 해당 문제로 이동합니다 😀
간단하게 스택의 작동 원리를 알면 풀 수 있는 문제였다.
그런데 왜 블로그에 남겨놨냐 ? 슬라이싱에 대해 무지한 부분이 있었기 때문이다.
처음에 작성한 코드는 빈 배열을 참조할때 에러가 발생하는 경우를 없애기 위해 arr[0]의 값을 먼저 answer 배열에 넣어주고 시작했다.
근데 그렇게 안하고 answer[-1:] == [i]와 같이 슬라이싱을 해주면 빈 배열에 써도 죽지 않는다는걸 이제서야 생각한 나 반성하라고 적어둠.
def solution(arr):
answer = [arr[0]]
for ele in arr:
if answer[-1] != ele:
answer.append(ele)
else:
continue
return answer
print(solution([1,1,3,3,0,1,1]))
print(solution([4,4,4,3,3]))
