728x90
접근
python의 heapq를 사용해보았다.
최대힙이 되도록 heap 자료구조에 넣고 0을 입력할 때마다 최댓값을 출력한다.
구현
N개의 수를 입력한다.
0이 입력되었을 때 heap이 비어있으면 0을, 아니라면 최댓값을 출력한다.
이외의 수가 입력된다면 heap 자료구조에 최댓값이 위에 있도록 마이너스 값과 튜플형태로 넣어준다.
import sys
import heapq
input = sys.stdin.readline
N = int(input())
hq = []
for _ in range(N):
number = int(input())
if number == 0:
if not hq:
print(0)
else:
result = heapq.heappop(hq)
print(result[1])
else:
heapq.heappush(hq, (-number, number))
'알고리즘 풀이 > 백준' 카테고리의 다른 글
[백준 1987] 알파벳 (0) | 2021.04.20 |
---|---|
[백준 15658] 연산자 끼워넣기(2) (0) | 2021.04.19 |
[백준 11497] 통나무 건너뛰기 (0) | 2021.04.17 |
[백준 9935] 문자열 폭발 (0) | 2021.04.13 |
[백준 2304] 창고 다각형 (0) | 2021.04.13 |