문제풀이/기타

[파이썬] [스택/큐] Pro 프린터

승무_ 2022. 2. 11. 07:26

문제

https://programmers.co.kr/learn/courses/30/lessons/42587?language=python3 

 

코딩테스트 연습 - 프린터

일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린

programmers.co.kr

 

코드

from collections import deque

def solution(priorities, location):
    temp=[]
    queue=deque()
    for i in range(len(priorities)):
        queue.append((priorities[i],i))

    while queue:
        pri,index=queue.popleft()
        if pri >= max(priorities):
            temp.append(index)
            priorities.remove(max(priorities))
        else:
            queue.append((pri,index))
    
    result=-1
    for i in range(len(temp)):
        if location==temp[i]:
            result=i
    return result+1