import sys
import heapq
input = sys.stdin.readline
h = []
n = int(input())
for i in range(n):
x = int(input())
if x==0:
if not h:
print(0)
else:
print(heapq.heappop(h)[1])
else:
heapq.heappush(h,(-x,x))
heapq.heappush(heap, (-item,item))
튜플형식으로 음수값과 함께 원래 값을 힙에 추가하면
튜플의 첫 번째 원소인 -item으로 최소 힙 정렬을 수행하기 때문에 최대 힙 정렬을 수행한 것과 같은 효과가 일어난다.
heapq.heappop(heap)[1]
pop할 때에는 튜플의 두 번째 값을 꺼내오면 된다.
'[BOJ] - Python' 카테고리의 다른 글
[백준] 1931 : 회의실 배정 python (0) | 2023.08.12 |
---|---|
[백준] 11047 : 동전 0 python (0) | 2023.08.12 |
[백준] 1991 : 트리 순회 python (0) | 2023.08.10 |
[백준] 1927 : 최소 힙 python (0) | 2023.08.10 |
[백준] 11557 : Yangjojang of The Year python (0) | 2023.04.09 |