본문 바로가기
알고리즘

[프로그래머스/카카오 블라인드] 실패율

by limew 2023. 6. 6.

https://school.programmers.co.kr/learn/courses/30/lessons/42889

 

  • 실패율 계산 = 현재 스테이지에 남은 사람 수 / 현재 스테이지까지 올라온 전체사람수
  • array를 이용한 내림차순 정렬
function solution(N, stages) {
    var answer = [];
    let fails = [];
    
    // 실패율 계산
    for (let stage = 1; stage <= N; stage++) {
        const curr = stages.filter(s => s === stage).length; // 현재 stage에 남아 있는 사람의 수
        const all = stages.filter(s => s >= stage).length; //
        fails.push([stage, curr/all]);
    }
    // 내림차순 정렬
    fails.sort((a, b) => b[1] - a[1]);
    answer = fails.map(f => f[0]);
    return answer;
}