function solution(priorities, location) {
let result = 0;
let idIndex = [];
// 고유값을 만들어줌
for (let i = 0; i < priorities.length; i++) {
idIndex.push(i);
}
while (true) {
// 대기목록 맨앞에 있는것을 뽑는다
let cur = priorities.shift();
// 남은 대기목록에 뽑은 목록보다 큰 값이 있으면
if (priorities.some((item) => cur < item)) {
// 대기목록 맨뒤에 다시 넣는다
priorities.push(cur)
// 고유값도 일치시키기 위해 맨앞에서 뽑은뒤 맨뒤에 넣는다
idIndex.push(idIndex.shift());
} else {
// 큰 값이 없을때 고유값도 맨앞부터 빼주고 location과 일치하는 숫자가 나올때 result를 return한다
result++;
curIndex = idIndex.shift();
if (curIndex === location) {
return result;
}
}
}
}