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

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

QA

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

본문

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은 왜.. 하는것인지.

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

 

 


function solution(progresses, speeds) {
    var answer = [];
    var day = [];
    var i = 0;
    for (i = 0; i < progresses.length; i++) {
        day[i] = Math.ceil(100 - progresses[i]) / speeds[i];
    }
    // 7,3,9
    for (i = 0; i < day.length; i++) {
        day[i] = day[i - 1] > day[i] ? day[i] = day[i - 1] : day[i]
    }
    // 7,7,9
    for (let i = 0; i < day.length; i++) {
        answer[day[i]] ? answer[day[i]]++ : answer[day[i]] = 1
    }
    let result = [];
    for (let key in answer) {
        result.push(answer[key]);
    }
    return result;
}
var sol1 = solution([93, 30, 55], [1, 30, 5]);
var sol2 = solution([95, 90, 99, 99, 80, 99],[1, 1, 1, 1, 1, 1]);
console.log(sol1);
console.log(sol2);
 

이 질문에 댓글 쓰기 :

답변 1

답변을 작성하시기 전에 로그인 해주세요.
전체 2,663
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT