honey_pot
[Python] 이중우선순위큐 본문
https://school.programmers.co.kr/learn/courses/30/lessons/42628
리트코드에서 원형 큐, 이런저런 큐 구현하는 문제랑 비슷한 느낌이다
대신 리트코드에서는 큐도 stack으로 구현해보세요 이런 식이라 결이 좀 다른듯
deque 정렬, popleft, pop 메서드를 쓰면 문제 자체는 어렵지 않았다
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
from collections import deque
def solution(operations):
answer = []
q = deque()
for operation in operations:
o, p = operation.split(" ")
if o == "I":
q.append(int(p))
q = deque(sorted(q))
elif o == "D" and int(p) < 0 and q:
q.popleft()
elif o == "D" and int(p) > 0 and q:
q.pop()
return [max(q),min(q)] if q else [0,0]
|
cs |
'문제 풀이' 카테고리의 다른 글
[python] 야근 지수 (0) | 2022.09.22 |
---|---|
[python] 최고의 집합 (0) | 2022.09.22 |
[Python] 정수 삼각형 (0) | 2022.09.22 |
[Python] N-Queen (0) | 2022.09.22 |
[Python] 하노이의 탑 (0) | 2022.09.22 |
Comments