코딩테스트
백준(4949) 균형잡힌 세상 PYTHON
choyou831
2024. 8. 22. 00:56
https://www.acmicpc.net/problem/4949


while (True):
word = input()
if word == ".":
break
stack = []
for i in word:
if i == '(' or i == '[':
stack.append(i)
elif i ==')':
if len(stack) != 0 and stack[-1] == '(':
stack.pop()
else:
stack.append(i)
elif i ==']':
if len(stack) != 0 and stack[-1] == '[':
stack.pop()
else:
stack.append(i)
if len(stack) == 0:
print("yes")
else:
print("no")
스택을 이용하여 언제 append와 pop을 할지 기준만 정해준다면 크게 어려움 없이 풀수있는 문제이다