테스트 사이트 - 개발 중인 베타 버전입니다

프로그래머스 문제인데 혹시 코드설명 부탁드려도 될까요? 채택완료

https://programmers.co.kr/learn/courses/30/lessons/42586?language=javascript 요 문제인데 제가 실습용(?) 자바 초보자라서 

저거 봐도 잘 모르겠더라구요.

 

 for (let i = 0; i < day.length; i++) {         answer[day[i]] ? answer[day[i]]++ : answer[day[i]] = 1     }

 

위 코드가 문제인데 요 코드까지 값이 null, null, 2, 1이런식으로 나옵니다.

if 축약 코드값은데 ++값은 왜 넣으며.. =1은 왜.. 하는것인지.

혹시 쉽게 설명해주실수 있을까요?

 

 

</strong></p>

<p>function solution(progresses, speeds) {

    var answer = [];

    var day = [];

    var i = 0;</p>

<p>    for (i = 0; i < progresses.length; i++) {

        day[i] = Math.ceil(100 - progresses[i]) / speeds[i];

    }

    // 7,3,9</p>

<p>    for (i = 0; i < day.length; i++) {

        day[i] = day[i - 1] > day[i] ? day[i] = day[i - 1] : day[i]

    }

    // 7,7,9</p>

<p>    for (let i = 0; i < day.length; i++) {

        answer[day[i]] ? answer[day[i]]++ : answer[day[i]] = 1

    }</p>

<p>    let result = [];

    for (let key in answer) {

        result.push(answer[key]);

    }

    return result;

}</p>

<p>var sol1 = solution([93, 30, 55], [1, 30, 5]);

var sol2 = solution([95, 90, 99, 99, 80, 99],[1, 1, 1, 1, 1, 1]);</p>

<p>console.log(sol1);

console.log(sol2);</p>

<p> </p>

<p><strong>

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

감사합니다 도움되었습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

전체 질문 목록

🐛 버그신고