728x90
반응형
문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12906 |
예시로 arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return하는 문제를 풀어야 한다.
문제를 제대로 읽지 않는다면 set을 사용해서 풀 수도 있을 것이다.
하지만 여기 return 되는 배열을 보면 1이 두 번이나 있기 때문에 set을 사용하지 않아야 한다.
나는 여기서 새로운 list(->result)를 생성해주고 arr의 제일 첫번째 값을 미리 넣어뒀다.
이후 for문을 돌면서 현재 원소가 result의 마지막 원소와 같지 않을때만 삽입해주도록 해놓았다.
def solution(arr):
result=[] #새로운 배열 생성
result.append(arr[0]) #미리 arr의 첫번째 값 넣어둠
for i in range(1,len(arr)):
if arr[i]!=result[-1]: #arr의 값이 result의 마지막 원소와 같지 않을때
result.append(arr[i])
return result
728x90
반응형
'알고리즘이야기 > 프로그래머스_알고리즘_lv1' 카테고리의 다른 글
나누어 떨어지는 숫자 배열 (0) | 2020.05.11 |
---|---|
크레인 인형뽑기 (2019 카카오 겨울 인턴십 기출) (0) | 2020.05.11 |
두 정수 사이의 합 (0) | 2020.05.05 |
가운데 글자 가져오기 (0) | 2020.05.05 |
K번째수 (0) | 2020.05.03 |
댓글