728x90
*문제 출처는 프로그래머스에 있습니다.
문제 제목: 짝지어 제거하기 (2단계)
문제 사이트: https://programmers.co.kr/learn/courses/30/lessons/12973
나의 풀이
def solrution(s):
stack = []
for i in range(len(s)):
if stack == []: # 만약 스택이 비었다면
stack.append(s[i]) # 문자열 추가
else: # 스택이 비지 않았다면
if stack[-1] == s[i]: # 스택에 있는 마지막 문자와 s[i]가 같으면
stack.pop() # 스택을 pop함
else:
stack.append(s[i]) # 아니면 추가
# for 문을 다 돌고나서 스택이 비었는지 확인
if stack == []: #스택이 비었다면 1
return 1
else: # 스택이 비지 않으면 0
return 0
stack 을 이용해서 푼다면 쉽게 금방 풀린다!
비슷한 문제로 프로그래머스 괄호 문제도 있다.
https://sillon-coding.tistory.com/114
※ 알아야 할 것
- stack 자료구조를 이용해서 풀어야한다.
https://sillon-coding.tistory.com/65
728x90
'coding test - python > Programmers' 카테고리의 다른 글
Programmers / 줄 서는 방법 / Python 파이썬 (0) | 2022.06.26 |
---|---|
Programmers / 모음 사전 / Python 파이썬 (0) | 2022.05.26 |
Programmers / 구명보트 / Python 파이썬 (0) | 2022.05.25 |
Programmers / 프린터 / Python 파이썬 - 작성중 (0) | 2022.05.20 |
Programmers / 주식 가격 / Python 파이썬 (0) | 2022.05.19 |