728x90

programmers.co.kr/learn/courses/30/lessons/42587

 

코딩테스트 연습 - 프린터

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

programmers.co.kr

def solution(priorities, location):
    order = [0 for _ in range(len(priorities))]
    for i in range(len(priorities)):
        priorities[i] = [i, priorities[i]]

    j = 1 
    cnt = 1
    while True:
        b = False
        if len(priorities) == 1:
            order[priorities[0][0]] = cnt
            break

        if max(list(zip(*priorities))[1]) == priorities[0][1]:
            b = True

        if b == True:
            order[priorities[0][0]] = cnt
            cnt += 1
            priorities = priorities[1:]

        else:
            priorities = priorities[1:] + [priorities[0]] 
            
    answer = order[location]
    return answer

# 큐랑 스택 공부해야겠다..

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기