Programming/Coding Test
백준 4949 - deque를 이용해서 스택 문제풀기
Nolja놀자
2021. 1. 12. 13:14
반응형
4949번: 균형잡힌 세상
하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마
www.acmicpc.net
코드
from collections import deque
deq = deque()
while True:
s = input()
flag = 1
if s[0] == '.':
break
for i in range(len(s)):
if s[i] == '[' or s[i] == '(':
deq.append(s[i])
elif s[i] == ']':
if len(deq) != 0 and deq[len(deq)-1] == '[':
deq.pop()
else:
flag = 0
break
elif s[i] == ')':
if len(deq) != 0 and deq[len(deq)-1] == '(':
deq.pop()
else:
flag = 0
break
if flag == 1 and len(deq) == 0:
print("yes")
else:
print("no")
deq.clear()
새로 알게된 문법 )
deq.clear() 하면 덱 안의 값이 모두 삭제된다.
반응형