https://school.programmers.co.kr/learn/courses/30/lessons/42628
import heapq
def solution(operations):
min_heap = []
max_heap = []
answer = []
for i in operations:
op, data = i.split(" ")
data = int(data)
if op == "I":
heapq.heappush(min_heap, data)
heapq.heappush(max_heap, -data)
elif len(min_heap) == 0:
continue
elif data == 1:
heapq.heappop(max_heap)
min_heap.pop()
elif data == -1:
heapq.heappop(min_heap)
max_heap.pop()
if len(min_heap) < 1:
answer.append(0)
answer.append(0)
else:
answer.append(-heapq.heappop(max_heap))
answer.append(heapq.heappop(min_heap))
return answer
728x90
반응형
'🔻PS > Programmers' 카테고리의 다른 글
[Programmers] 프로그래머스 피보나치 수 Python (0) | 2024.06.01 |
---|---|
[Programmers] 프로그래머스 이진 변환 반복하기 Python (0) | 2024.05.29 |
[Programmers] 프로그래머스 뉴스 클러스터링 Python (0) | 2024.05.21 |
[Programmers] 프로그래머스 n진수 게임 Python (0) | 2024.05.20 |
[Programmers] 프로그래머스 외계인 사전 Python (0) | 2024.05.19 |