https://school.programmers.co.kr/learn/courses/30/lessons/42587?language=javascript
function solution(priorities, location) {
// priorities 중요도
// location 내가 인쇄를 요청한 문서가 현재 대기목록의 어떤 위치에 있는지 알려주는 변수
// answer 내가 요청한 문서가 몇 번째로 인쇄되는지 return
let printed = 0;
priorities = priorities.map((p,index) => {
if(index === location) return {prio: p, target: true};
return {prio: p, target: false};
});
while(true) {
const arr = priorities.map(p => {
return p.prio;
});
let max = Math.max(...arr);
if(priorities[0]['prio'] !== max) {
let prio = priorities.shift();
priorities.push(prio);
} else {
if(priorities[0]['target'] === true) {
return ++printed;
}
priorities.shift();
printed++;
}
}
}
728x90
'Algorithm&CodingTest > Programmers' 카테고리의 다른 글
[Programmers] 스택/큐 lv2 - 다리를 지나는 트럭 (0) | 2023.02.12 |
---|---|
[Programmers] 스택/큐 lv2 - 기능개발 (0) | 2023.02.12 |
[Programmers] 2019 카카오 개발자 겨울 인턴십 - 튜플 (0) | 2023.02.11 |
[Programmers] 코딩테스트 입문 - 평행 (0) | 2023.02.10 |
[Programmers] 코딩테스트 입문 - 구슬을 나누는 경우의 수 (0) | 2023.02.10 |