주어진 arr 배열의 값들이 연속적인지 확인하면 되는 문제였다.
진행 순서에 따라 새로운 값을 저장하는 cur 변수와 arr 리스트의 새로운 값을 비교하는 식으로 간단히 구현 가능하다.
def solution(arr):
answer = []
cur = -1
for i, val in enumerate(arr):
if cur != val:
answer.append(val)
cur = val
return answer
풀고 나서 다른 분들의 풀이를 보던 중 흥미로운 코드가 있어 적어본다.
def no_continuous(s):
a = []
for i in s:
if a[-1:] == [i]: continue # 배열의 마지막값과 i 값을 비교하는 것
a.append(i)
return a
- a 가 비어있는 배열인 경우 -1 index를 호출하면 인덱스 에러 발생
- a[-1:]는 a 배열의 마지막값을 리스트로 출력한 것이므로 i값도 리스트 타입으로 만들어서 비교하는 방법
'코딩 테스트' 카테고리의 다른 글
[백준, Hash] 1620_나는야 포켓몬 마스터 (1) | 2024.03.28 |
---|---|
[백준, 그리디] 1541_잃어버린 괄호 (0) | 2024.03.28 |
[백준, DP] 1463_1로 만들기 (0) | 2024.03.25 |
[백준, DFS/BFS]1012_유기농 배추 (1) | 2024.03.19 |
[프로그래머스 고득점 Kit] 해시_ 폰켓몬 (0) | 2024.03.13 |