https://programmers.co.kr/learn/courses/30/lessons/42587
백준 1966번 프린터 큐와 동일한 문제이다.
우선순위값과 인덱스를 같이 저장한 array리스트를 큐로 만들어준다.
뒤에 리스트에 증요도가 높은 게 하나라도 있다면 뒤에 추가시키고 important를 false로 바꿔준다.
만약 가장 중요한 문서라면 result에 추가시켜준다.
그리고 원하는 인덱스의 값이 몇 번째로 인쇄되는지 출력해주면 된다.
def solution(priorities, location):
from collections import deque
array=[]
for i in range(len(priorities)):
array.append((priorities[i],i))
queue=deque(array)
result=[]
while queue:
important=True
x,y=queue.popleft()
for i in range(len(queue)):
if x<queue[i][0]:
queue.append((x,y))
important=False
break
if important:
result.append((x,y))
for i in result:
if i[1]==location:
return (result.index(i)+1)