알고리즘 스터디 스택 - 10773번
스택 알고리즘 10773번 풀이
study백준 스택 10773번
안녕하세요 GDSC ML 멤버 나건주입니다.
파이썬 알고리즘 스터디 4주차 스택의 두번째 문제를 풀어보았습니다.
https://www.acmicpc.net/problem/10773
스택에서 pop과 append를 이용하여 해결할 수 있는 간단한 문제였습니다.
재현이가 0 을 외치면 pop을 이용해서 최근의 숫자를 지웠습니다.
반대로 0이 아닌 숫자를 외치면 스택에 append 했습니다.
출력하는 값은 stack에 남아있는 숫자이기 때문에 sum을 이용해서 출력했습니다.
import sys
stack=[]
for i in range(int(sys.stdin.readline())):
money=int(sys.stdin.readline())
if money==0:
stack.pop()
else:
stack.append(money)
print(sum(stack))
4
비교적 간단한 문제였고 input()을 사용하면 시간 초과가 발생하니 sys.stdin.readline()을 이용해야합니다.