아이디어
최소 당첨 갯수 = 두 배열에서 일치하는 숫자
최대 당첨 갯수 = 최소 당첨 갯수 + lottos의 0의 갯수
6개 일치가 1등
5개 일치가 2등
...
이므로
등수는
7 - 일치갯수 (하지만 0개 일치는 6등임)
코드
function solution(lottos, win_nums) {
let matchCount = 0;
let zeroCount = 0;
// 두 배열에서 일치하는 숫자 갯수 구함
lottos.forEach((ele) => {
if (win_nums.includes(ele)) matchCount++;
// lottos 배열에서 0의 갯수 구함
zeroCount = lottos.filter((ele) => 0 === ele).length;
});
let { max, min } = { max: matchCount + zeroCount, min: matchCount };
if (max === 0) max++;
if (min === 0) min++;
return [7 - max, 7 - min];
}
'코딩 테스트 > 프로그래머스 level1' 카테고리의 다른 글
숫자 문자열과 영단어 (0) | 2022.04.28 |
---|---|
신규 아이디 추천 (1) | 2022.04.27 |
신고 결과 받기 (0) | 2022.04.21 |
체육복 (0) | 2022.04.19 |
K번째수 (0) | 2022.04.19 |