새소식

Programmers

[Programmers] 기능개발 문제 - (javascript)

  • -
728x90
문제 이름 :  기능개발

 

<<< 문제 내용 >>>



 

function solution(progresses, speeds) {
    let answer = {};
    let maxValue = 0;
    progresses.map((el,idx)=> {
        const need = (100-el) % speeds[idx] === 0 ? (100-el)/speeds[idx] : Math.floor((100-el)/speeds[idx])+1;
        maxValue = Math.max(maxValue, need);
        
        answer[maxValue] = (answer[maxValue] || 0) +1;
    })
    
    return Object.values(answer);
}

* 100에서 현재 진행된 기능을 빼고 이를 이용해 남은 일자를 구해줍니다.

이 일자는 앞보다 작을 수 없다는 규칙을 이용해 maxValue로 answer에 객체로 넣어줍니다.

 -> 객체로 넣는 이유는 { 5 : 1, 10: 2 } 이렇게 개수를 세기 위해서 입니다.

이미 오름차순으로 들어가는 값이기 때문에 Object.values로 값만 뽑아주면 완성

 

 

도움이 되셨다면 공감 부탁드립니다.

Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.