PS/백준
[Python] 1966번 프린터 큐
s_omi
2024. 10. 30. 09:03
728x90
반응형
SMALL
✏️ 문제
문제 파악
같은 중요도가 없다면 쉽게 풀 수 있는데 중요도가 같은 값들이 있어서 시간이 걸렸던.. 문제이다.
덱에 넣을 때부터 아예 (중요도, 인덱스)로 키 값도 같이 넣어서 키 값을 기준으로 구하는 값이 맞는 지 확인하도록 했다.
그리고 max 값을 구할 때 처음에 max(q[0]) 으로 했는데 알고보니 max(q)[0] 이런 식으로 구하는 거 였다...
알고리즘
- 구현
- 자료 구조
- 시뮬레이션
- 큐
코드
from collections import deque
for _ in range(int(input())):
n, m = map(int, input().split())
ary = list(map(int, input().split()))
order = 0
q = deque([])
for i in range(n):
q.append((ary[i], i))
while q:
current = q.popleft()
if len(q) > 0 and current[0] < max(q)[0]:
q.append(current)
else:
order += 1
if current[1] == m:
print(order)
break
728x90
반응형
LIST