1. 문제
2. 접근 방법
heapq를 사용해서 접근해야하는데욧
heapq는 최소 힙이기 때문에
우선순위를 추가해줘서 만들어주면 됩니다.
우선순위는
heappush(lst, (-n, n))
과 같이
인풋 된 숫자 값을 음수로 바꿔주면 ~!
됩니다.
그리고 출력할 때는 원래의 값인 1번 인덱스 값(n)을 출력하면 됩니다요
3. 코드
python
import sys, heapq
N = int(input())
lst = []
for i in range(N):
n = int(sys.stdin.readline())
if n:
heapq.heappush(lst, (-n, n))
else:
if lst:
print(heapq.heappop(lst)[1])
else:
print(0)
4. 마치며
마치며~!
'Algorithm > Python' 카테고리의 다른 글
[백준 1655] 가운데를 말해요 (0) | 2021.04.23 |
---|---|
[백준 11286] 절댓값 힙 (0) | 2021.04.23 |
[백준 1927] 최소 힙 (0) | 2021.04.22 |
[백준 7568] 덩치 (0) | 2021.04.22 |
[백준 1181] 단어 정렬 (0) | 2021.04.22 |