STUDY/Algorithm

[백준] 11279 최대힙 python

sinawi95 2021. 5. 4. 17:57
728x90

www.acmicpc.net/problem/11279

 

11279번: 최대 힙

첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가

www.acmicpc.net

import sys;input = sys.stdin.readline
from heapq import heappop, heappush
h = []
for i in range(int(input())):
    x = int(input())
    if x:
        heappush(h, -x)
    else:
        print(-heappop(h) if h else 0)

heapq는 기본이 minheap 이기때문에 마이너스 기호를 붙여서 넣어주면 maxheap이된다.

heap을 C로 표현하면 어떻게 할수있을까? 

나중에 생각해봐야지..