티스토리 뷰

프로그래머스 문제 정복기

 

난이도 :  lv1

 


🔗 Link


https://programmers.co.kr/learn/courses/30/lessons/42840

 

📑 Summary


 순서를 유지한 상태로, 연속된 숫자를 제거하면 되는 문제다.

 

🔑 How to solve? 

 


연속의 의미를 알아두자.

 연속은 같은 숫자가 다시 한번 나왔다는 의미이므로, 연속을 제거하기 위해서는 이전 혹은 다음값과 비교를 통해서 같다는 것을 확인해야한다. 이를 이용하면 쉽게 풀 수 있다. 비교를 해야하므로 값을 저장해둘 변수를 하나 두자. 그리고 맨 처음값은 미리 저장해두자. 반복문을 통해 요소로 접근한다. 첫 값에 대해선 미리 넣어두었으므로, 두번째 인덱스부터 접근하여 저장된 변수와 같다면, 값을 누적시키지 않고, 다르다면 변수에 값을 바꾸고, 누적시키면 된다.

 

💡 Code


#   Link
#   https://programmers.co.kr/learn/courses/30/lessons/12906


def solution(arr):
    answer = []
    curNum= arr[0]
    answer.append(curNum)
    for i in range(1,len(arr)):
        if arr[i] != curNum:
            answer.append(arr[i])
            curNum = arr[i]    
    return answer

 

 

 


포스팅에 문제가 있거나, 설명이 잘못된 부분 지적 환영합니다.

더 나은 퀄리티의 콘텐츠를 제공할 수 있도록 노력하겠습니다.

읽어주셔서 감사합니다. 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함