[JavaScript] 프로그래머스 프린터 LEVEL2

김예진·2021년 1월 16일
0

코딩 테스트

목록 보기
8/42

문제출처

function solution(priorities, location) {
    let arr = [...priorities];
    let queue = priorities.map((priority, i) => [priority, i]);
    let order = 1;
    
    while (queue.length > 0) {
        const max = Math.max(...arr);
        const node = queue.shift();
        arr.shift();
        
        if (node[0] === max && node[1] === location) return order;
        
        if (node[0] !== max) {
            queue.push(node);
            arr.push(node[0]);
        } else {
            order++;
        }
    }
    
    return 0;
}

0개의 댓글