728x90
728x90
https://www.acmicpc.net/problem/10773
10773번: 제로
첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경
www.acmicpc.net
가장 최근에 넣은 스택 옆에 저장하고, 가장 최근에 넣은 스택을 꺼내오는 덱을 이용했다.
구현은 그리 어렵지 않아 이만 설명을 마친다. 코드로 이해하는 편이 빠를 것 같다.
from collections import deque
import sys
K = int(input())
deq = deque()
result = 0
for i in range(K):
num = int(sys.stdin.readline())
if num != 0:
deq.append(num)
else:
deq.pop()
while deq:
result = result + deq.pop()
print(result)
728x90
728x90
'[Python]BaekJoon.AC' 카테고리의 다른 글
[Python]백준 BaekJoon.AC 10866 : 덱(deque, try-except) (0) | 2022.01.24 |
---|---|
[Python]백준 BaekJoon.AC 10845 : 큐(deque, try-except) (0) | 2022.01.24 |
[Python]백준 BaekJoon.AC 10828 : 스택(deque, try-except) (0) | 2022.01.24 |
[Python]백준 BaekJoon.AC 10816 : 숫자 카드2(Counter, 이진탐색X) (0) | 2022.01.22 |
[Python]백준 BaekJoon.AC 9012 : 괄호(스택, 리스트) (0) | 2022.01.21 |
[Python]백준 BaekJoon.AC 4949 : 균형잡힌 세상(list, stack) (0) | 2022.01.21 |
[Python]백준 BaekJoon.AC 2164 : 카드2(deque, queue) (0) | 2022.01.20 |
[Python]백준 BaekJoon.AC 2108 : 통계학(Counter, sum) (0) | 2022.01.20 |