https://www.acmicpc.net/problem/11279
11279번: 최대 힙
첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가
www.acmicpc.net
#11279_최대힙
#https://www.daleseo.com/python-heapq/
import sys
import heapq
input = sys.stdin.readline
N = int(input())
heap = []
for _ in range(N):
num = int(input())
if num==0:
if heap:
print(heapq.heappop(heap)[1])
else:
print(0)
else:
heapq.heappush(heap,(-num,num))
오랜만에 min heap max heap 개념 건드리니.. 다시 자료구조를 공부해야겠다는 생각이...
'알고리즘 > 백준(BOJ)' 카테고리의 다른 글
[백준/알고리즘] #1991: 트리순회 [파이썬(python)/트리] (0) | 2021.10.18 |
---|---|
[백준/알고리즘] #9934: 완전 이진 트리 [파이썬(python)/트리] (0) | 2021.10.18 |
[백준/알고리즘] #2475: 검증수 [파이썬(python)/수학] (0) | 2021.10.18 |
[백준/알고리즘] #2576: 홀수 [파이썬(python)/수학] (0) | 2021.10.18 |
[백준/알고리즘] #10164: 격자상의 경로 [파이썬(python)/수학/DP] (0) | 2021.10.18 |