TIL #18 [프로그래머스 JavaScript] 로또의 최고 순위와 최저 순위 2가지 풀이

DO YEON KIM·2024년 5월 9일
1

부트캠프

목록 보기
18/72

하루 하나씩 작성하는 TIL #18



로또 문제를 두 가지 풀이로 풀어보았다.

function solution(lottos, win_nums) {
  let zero = 0;
  let min = 7;
  lottos.forEach((a)=>{
    if(win_nums.includes(a)) min--
    else if(a === 0) zero++
  })
  if(min === 7) min = 6;
  let max = min - zero;
  if(max === 0) max = 1;
  var answer = [max, min];
  return answer;
}
//다른 풀이

function solution(lottos, win_nums) {
    // 배열을 정렬시킨다.
    // 순서대로 값을 비교
    // 0인 경우 다 맞다는 가정
    // 0인 경우 다 틀리다는 가정
    let answer = [];
    const correct = lottos.filter(lotto => win_nums.includes(lotto)).length;
    const zerro = lottos.filter(lotto => lotto === 0).length;

    let min = 7-correct >= 6 ? 6 : 7-correct;
    let max = min - zerro <= 1 ? 1 : min - zerro;

    answer = [max, min]
    return answer
}
profile
프론트엔드 개발자를 향해서

0개의 댓글