from collections import deque
def solution(priorities, location):
answer = 0
q = deque([(v,i) for i,v in enumerate(priorities)])
# q가 비어질때까지
while q:
item = q.popleft()
# 남은 q 원소가 있는지, 있다면 max값과 비교하여 max값보다 작다면
if q and max(q)[0] > item[0]:
q.append(item)
else:
# 인쇄 횟수 증가
answer += 1
# 인쇄된 부분이 요청한 페이지와 같다면
if item[1] == location:
break
return answer
deque()
, enumerate()
사용하는 것까지는 알았다 ㅎㅎ# q = deque([(2, 0), (1, 1), (3, 2), (2, 3)])
q = deque([(v,i) for i,v in enumerate(priorities)])
print(max(q)[0]) # 3
# err = deque([(0, 2), (1, 1), (2, 3), (3, 2)])
err = deque([(i,v) for i,v in enumerate(priorities)])
print(max(err)[1]) # 2