[힙] 2927번 최소 힙

정은경·2020년 6월 17일
0

백준 문제풀이

목록 보기
19/51

1. 문제


2. 나의 풀이

  • 시간초과나는 나의 풀이
import heapq

count = int(input())
heap = list()

for _ in range(count):
    data = input()
    if data == "0":
        if heap:
            print(heapq.heappop(heap))
        else:
            print(0)
    else:
        heapq.heappush(heap, int(data))
import sys
import heapq

count = int(sys.stdin.readline().strip())
heap = list()

for _ in range(count):
    data = int(sys.stdin.readline().strip())
    if data:
        heapq.heappush(heap,data)
    else:
        if heap:
            print(heapq.heappop(heap))
        else:
            print(0)

3. 남의 풀이

https://claude-u.tistory.com/153

import sys
import heapq

numbers = int(input())
heap = []

#Max Heap
for _ in range(numbers):
    num = int(sys.stdin.readline())
    if num != 0:
        heapq.heappush(heap, num)
    else:
        try:
            print(heapq.heappop(heap))
        except:
            print(0)

4. 느낀 점

  • 거의 똑같은데 왜 내것은 시가 초과인가?!
profile
#의식의흐름 #순간순간 #생각의스냅샷

0개의 댓글