import heapq
def solution(operations):
answer = []
heapq.heapify(answer)
for a in range(len(operations)):
string = operations[a]
if string[0] == "I":
b = operations[a][2:]
heapq.heappush(answer, int(b))
elif string == "D 1":
if len(answer) == 0:
continue
else:
answerr = []
for i in range(len(answer)):
a = heapq.heappop(answer)
heapq.heappush(answerr, a * -1)
heapq.heappop(answerr)
for i in range(len(answerr)):
a = heapq.heappop(answerr)
heapq.heappush(answer, a * -1)
else:
if len(answer) == 0:
continue
else:
heapq.heappop(answer)
if len(answer) == 0:
return [0, 0]
result = []
ansrev = []
heapq.heapify(ansrev)
for i in range(len(answer)):
aa = heapq.heappop(answer)
heapq.heappush(ansrev, aa * -1)
result.append(heapq.heappop(ansrev) * -1)
for i in range(len(ansrev)):
a = heapq.heappop(ansrev)
heapq.heappush(answer, a * -1)
result.append(heapq.heappop(answer))
return result
코드 정리가 필요하다.