문제
풀이
function solution(N, stages) {
const arr = [];
const answer = [];
let count = 0;
// for문으로 1부터 N까지 돌면서 i와 같은 숫자를 찾아 count를 1씩 증가시키고 arr에 i와 계산한 실패율을 넣는다. 그리고 stages는 i와 같지 않는 것들만 남겨서 재할당 해주고 count는 다시 0으로 할당한다. 이 사이클을 i가 N이 될 때까지 반복한다.
for (let i = 1; i <= N; i++) {
stages.map((el) => {
if (el === i) count++;
});
arr.push([i, count / stages.length]);
stages = stages.filter((num) => num !== i);
count = 0;
}
// arr를 실패율이 큰 순서대로 정렬하고 정렬된 순서대로 arr[0]에 해당하는 숫자를 answer에 넣어준다.
arr.sort((a, b) => b[1] - a[1]);
arr.map((el) => answer.push(el[0]));
return answer;
}