코딩코딩

[프로그래머스] level1 - 같은 숫자는 싫어 : 파이썬(Python) 풀이

Jerry Jun 2020. 12. 17. 09:16
728x90

문제

프로그래머스 level1 같은 숫자는 싫어

 

코딩테스트 연습 - 같은 숫자는 싫어

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

programmers.co.kr

 

코드

def solution(arr):
    n = 0; answer = []
    while(n < len(arr)-1):
        if(arr[n] == arr[n+1]):
            if(n == len(arr)-2):
                answer.append(arr[n])
                n += 1
            else:
                n += 1
        else:
            answer.append(arr[n])
            n += 1
            if(n == len(arr)-1):
                answer.append(arr[n])
    return answer

 

코드풀이

반복이 되는 배열을 받았을 때 반복을 제거한 숫자만 반환하는 문제이다.

그래서 이전 원소와 다음 원소를 비교하여 같다면 빈 배열에 추가하고 비교할 인덱스를 증가시킨다.

while 문을 통해 배열의 길이를 오버하면 반복문을 탈출한다.

 

인증 사진
프로그래머스

300x250