728x90
https://www.acmicpc.net/problem/11279
import sys, heapq
n = int(sys.stdin.readline())
heap = []
for _ in range(n):
x = int(sys.stdin.readline())
if not heap and x == 0: #1
print(0)
elif heap and x == 0: #2
print(heapq.heappop(heap)* -1)
elif x != 0: #3
heapq.heappush(heap, -x)
#1 : heap이 비어있고 입력값이 0이라면 0을 출력
#2 : 힙이 비어있지 않고 입력값이 0이라면 최대값을 출력
#3 : 입력값이 0이 아니라면 값에 음수를 붙여서 삽입
728x90
'[Coding Test] > [백준]' 카테고리의 다른 글
[백준] 11286 파이썬(python) : 절댓값 힙 - (★) (0) | 2022.06.20 |
---|---|
[백준] 1927 파이썬(python) : 최소 힙 (0) | 2022.06.19 |
[백준] 11478 파이썬(python) : 서로 다른 부분 문자열의 개수 - (★) (0) | 2022.06.18 |
[백준] 1269 파이썬(python) : 대칭 차집합 (0) | 2022.06.18 |
[백준] 1764 파이썬(python) : 듣보잡 - (★) (0) | 2022.06.18 |