알고리즘
[python] 백준 11279번 - 최대 힙
이재현9999
2024. 8. 11. 02:13
최대 힙을 구현하는 문제.
import sys
import heapq
input = sys.stdin.readline
N = int(input())
heap = []
for _ in range(N):
x = int(input())
if x == 0:
if len(heap) > 0:
print(-heapq.heappop(heap))
else:
print(0)
else:
heapq.heappush(heap, -x)
heapq 모듈을 사용하면 힙 자료구조를 간편하게 사용할 수 있지만,
최소 힙밖에 제공되지 않는다.
따라서 최대 힙을 구현하기 위해서는 원소를 저장할 때 마이너스 부호를 붙여
간단하게 최대 힙을 구현할 수 있다.