function solution(N, stages) {
let answer=[];
for (let i=1;i<=N;i++){
let numerator=stages.filter((el)=>el===i).length;
let denominator=stages.filter((el)=>el>=i).length;
answer.push([i,numerator/denominator])
}
answer.sort((a,b)=>b[1]-a[1]);
return answer.map((el)=>el[0])
}
// // 실패율: 스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수/스테이지에 도달한 플레이어의 수
// // 실패율 높은 스테이지부터 내림차순 정렬 배열
// function solution(N, stages) {
// var answer = [];
// let failArray=[]
// for (let i=1;i<=N;i++){
// let count=0;
// let count2=0;
// for (let j=0;j<stages.length;j++){
// if (stages[j]===i){
// count+=1;
// count2+=1
// }else if (stages[j]>=i){
// count2+=1;
// }
// }
// if (count===stages.length){
// failArray.push(1)
// }else if(count===0){
// failArray.push(0)
// }else{
// failArray.push(count/count2)
// }
// }
// let copy=failArray.slice().sort((a,b)=>b-a);
// for (let i=0;i<copy.length;i++){
// for (let j=0;j<failArray.length;j++){
// if (copy[i]===failArray[j]&& !answer.includes(j+1)){
// answer.push(j+1)
// }
// }
// }
// return answer;
// }
귀찮아서 냅다 for문 돌렸는데 코드가 지나치게 길어지고 허점도 많이 생겼다.