반응형
문제
https://programmers.co.kr/learn/courses/30/lessons/12906
코딩테스트 연습 - 같은 숫자는 싫어
배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은
programmers.co.kr
코드
def solution(arr):
a = []
for i in range(len(arr)):
if i == 0:
a.append(arr[i])
elif arr[i] != arr[i - 1]:
a.append(arr[i])
return a
코드 설명
빈 리스트 a를 생성한 뒤, 인덱스 == 0일 때는 무조건 새로운 내용 추가.
이후 arr[i]와 그 이전 인덱스 값을 비교해 값이 다르면 a 배열에 arr[i]값을 추가한다.
마무리
def no_continuous(s):
a = []
for i in s:
if a[-1:] == [i]: continue
a.append(i)
return a
* a [-1:] 가장 마지막 인덱스의 원소 리턴
만약 s = [1, 1, 3, 3, 0, 1, 1]라면,
첫번째 반복 실행 시
if a[-1:] == [i]: continue
empty != 1이므로 아래 코드 실행
a.append(i)
a.append(1)
a = [1]
두번째 반복 실행 시
if a[-1:] == [i]: continue
a[-1:] == 1
1 == 1 → continue, 따라서 아래 코드 실행 x
a = [1]
세번째 반복 실행 시
if a[-1:] == [i]: continue
a[-1:] == 1
1 != 3이므로 아래 코드 실행
a.append(i)
a.append(3)
a = [1, 3]
...
문자열 슬라이싱 참고
파이썬 인덱싱,슬라이싱(문자열,리스트)
파이썬에서는 인덱싱 과 슬라이싱이 있따. 인덱싱은 문자열이나 리스트에 번호를 부여하는것이다. 문자열 예를들어 hello python world 는 아래와같이 나타 낼 수 있습니다. 양수 인덱스는 0번부터,
dpdpwl.tistory.com
반응형
'Problem Solving > 프로그래머스' 카테고리의 다른 글
[프로그래머스 | 파이썬] H-Index(정렬/ level 2) (0) | 2022.12.30 |
---|---|
[프로그래머스 | 파이썬] 비밀지도 (2018 KAKAO BLIND RECRUITMENT/ level 1) (0) | 2022.12.28 |
[프로그래머스 | 파이썬] 카펫 (완전탐색 / level 2) (0) | 2022.12.28 |
[프로그래머스] 연습문제 "가운데 글자 가져오기"(파이썬) (0) | 2022.05.05 |
[프로그래머스] 위클리 챌린지 "부족한 금액 계산하기"(파이썬) (0) | 2022.05.05 |
[프로그래머스] 연습문제 "x만큼 간격이 있는 n개의 숫자"(파이썬) (0) | 2022.05.04 |