본문 바로가기
자바스크립트 코딩테스트

프로그래머스 Level 1 - 실패율 (Javascript)

by 준벨롭 2023. 11. 29.

문제

답안

function solution(N, stages) {
    let answer = [];
		
    //실패한 사람은 제외해야되기 떄문에 임시 변수 people생성
    let people = stages.length
    for (let i = 1; i <= N+1; i++) {
				
        //Array.filter() : 조건을 만족하는 원소만 추출
        let tmp = stages.filter(n => n === i).length
				
        //answer = [[스테이지, 실패율]]
        answer.push([i, tmp / people])
				
        //실패한 사람 제외
        people -= tmp
    }
        answer.pop()
		
    //answer의 2번째 원소기준으로 내림차순으로 정렬
    answer = answer.sort((a,b) => b[1] - a[1])
    
    //Array.map() : 배열을 조건에 맞게 변환
    return answer.map( a => a[0]);
}

후기

배열 내의 배열을 내림차순하는 법을 배웠다.

그리고 map을 이용해 원하는 배열 추출

728x90