[프로그래머스] 실패율 - JavaScript

이은빈 EUNBIN·2021년 1월 21일
0

📌 문제

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

📌 나의 풀이 (테스트 통과 성공)

function solution(N, stages) {
    let players = stages.length;
    let result = [];
    
    for(let i = 0; i < N; i++) {
        let notClear = stages.filter(p => p == i+1).length;
        let failureRate = 0;
        
        if(notClear == 0) {
            failureRate = 0
        } else {
            failureRate = notClear / players;
        }
        players = players - notClear;
        
        result.push({N: i+1, failureRate: failureRate});
    }
    
    result.sort((a, b) => {
        if (a.failureRate != b.failureRate) {
            return b.failureRate - a.failureRate;
        } else {
            return a.failureRate - b.failureRate;
        }
    })
    return result.map(n => n.N);
}

혼자 힘으로 다 푼 건 아니고...🙄
스테이지 별로 몇 명의 플레이어가 있는지 구하는 부분은 다른 분들의 코드를 참고했다
filter를 사용하면 저렇게 구할 수 있다니 🤦‍♀️

result.sort 부분도 더 간결하게 짤 수 있는 방법이 있다..! (따로 메모해둬야징)
아직 갈 길이 많이 멀지만 다른 분들 코드를 이해할 수 있는 만큼
성장한 것만으로도 사실 만족(?)스러운게 없지 않아 있다 🙃


YEAH 〰〰〰✨🎉🎊

📌 풀이

https://jongbeom-dev.tistory.com/144
https://velog.io/@sso/프로그래머스-JS-실패율

profile
Frontend Engineer & Value Creator

0개의 댓글