๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ฝ”๋”ฉํ…Œ์ŠคํŠธ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[Javascript] ํ”„๋ฆฐํ„ฐ (42587)

๋ฌธ์ œ๋งํฌ

 

๊ธฐ์–ตํ•  ๋ถ€๋ถ„

map ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ๊ฐ„๋‹จํ•˜๊ฒŒ [idx, e] ํ˜•ํƒœ์˜ ๋ฐฐ์—ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ.

Math.max(๋ฐฐ์—ด)์€ NaN ์—๋Ÿฌ๊ฐ€ ๋‚˜์˜ด. spread ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด์ค˜์•ผํ•จ

 

 

function solution(priorities, location) {
    var answer = "";
    const resultArr = []
    const printerArr = priorities.map((e, idx) => [idx, e])
    
    priorities.sort((a,b)=> a-b);

    while(printerArr.length > 0){
        curElement = printerArr.shift();
        
        if(curElement[1] < Math.max(...priorities)){
            printerArr.push(curElement);
        }else{
            resultArr.push(curElement);
            priorities.pop();
        }        
    }
    
    resultArr.forEach((e,idx) => {
        if(e[0] === location) answer = idx+1;
    })

    return answer;
}