본문 바로가기

카테고리 없음

알고리즘 풀이 -2 프로그래머스 스택/큐 프린터 문제

최초 풀이

스택을 활용하면 쉽게 풀릴 것 같은데 잘 모르겠다. 일단 어떻게든 풀자.

def solution(priorities, location):
    queue =  [(i,p) for i,p in enumerate(priorities)]

    for idx,value in enumerate(priorities):
        init_values[idx] = value
    max_num = max(init_values.values())
    answer  = 0;
    while init_values[location] > 0:
        for i in init_values:
            if init_values[i] == max_num:
                answer = answer + 1  
                if i == location:  
                    return answer
                init_values[i] = 0  
                max_num = max(init_values.values())

통과는 했는데... 어딘가 찜찜하다 더 짧고 효율적인 방법이 분명히 존재 할 것 같다.

스택에 대해서 조금 더 공부를 해보고 개선된 풀이를 올리도록 하겠다.