문제
코딩테스트 연습 - 짝지어 제거하기
짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙
programmers.co.kr
풀이
- stack에 쌓고, stack에 요소가 존재하면 stack의 마지막요소와 비교해서 똑같을 경우만 stack에서 제거해줌
- 그리고 stack에 요소가 마지막에도 존재하면 0, 존재하지 않으면 1(가능)을 리턴
코드
def solution(s):
stack = []
for i in s:
if stack and i == stack[-1]:
stack.pop()
else:
stack.append(i)
return 0 if stack else 1
반응형
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers ] Lv2. 타겟 넘버 (0) | 2021.05.24 |
---|---|
[Programmers] Lv2. 기능개발 (0) | 2021.05.20 |
[Programmers] Lv2. 124 나라의 숫자 (0) | 2021.05.20 |
[Programmers] Lv2. 멀쩡한 사각형 (0) | 2021.05.20 |
[Programmers] Lv1. 최대공약수와 최소공배수 (0) | 2021.05.15 |
댓글