토니의 연습장
스택 예제 본문
https://www.acmicpc.net/problem/10773
K = int(input())
stack = []
for i in range(K):
n = int(input())
if n == 0:
stack.pop(-1)
else:
stack.append(n)
sum = 0
for e in stack:
sum += e
print(sum)
https://www.acmicpc.net/problem/4949
while True:
s = input()
if s == ".":
break
stack = []
balanced = True
for i in range(len(s)):
# 1
if s[i] == '(' or s[i] == '[':
stack.append(s[i])
# 2
if s[i] == ')':
if len(stack) == 0:
balanced = False # False
last = stack.pop(-1) # True
if last != '(':
balanced = False # False
break
# 3
if s[i] == ']':
if len(stack) == 0:
balanced = False # False
last = stack.pop(-1) # True
if last != '[':
balanced = False # False
break
# 마지막에는 stack이 비어 있어야 함
if len(stack) != 0:
balanced = False
if balanced:
print("yes")
else:print("no")
'Algorithm > Ch 1. 기초 자료구조' 카테고리의 다른 글
큐 예제 (1) | 2024.09.05 |
---|