본문 바로가기
Algorithm/프로그래머스[Programmers]

[JS] 2021Dev-Matching : 로또의 최고 순위와 최저 순위 프로그래머스 LEVEL1

by jgo 2022. 6. 24.

문제 링크

https://programmers.co.kr/learn/courses/30/lessons/77484

풀이 전략

순서와 상관없이, 구매한 로또에 당첨 번호와 일치하는 번호가 있으면 맞힌 걸로 인정됩니다.

코드 

function solution(lottos, win_nums) {
    var answer = [];
    let zero = 0;
    let correct = 0;
    
    for(const num of lottos){
        if(num === 0) zero++;
        for(const win of win_nums){
            if(num === win) correct++;
        }
    }
    let best = 7 - (zero+correct);
    let worst = 7 - correct;
    
    if(best >= 7) best = 6
    if(worst >= 7) worst = 6
    
    answer.push(best, worst);
    
    return answer;
}

 

회고

다소 무식한 방법으로 풀었다. 조금 더 편하게? 풀 수 있었을 것 같은데 처음으로 생각나 풀이법에서 벗어날 수 없었다. 이후 다른 분들의 풀이를 보니 문제를 이해하는 방법을 깨달을 수 있었다. 

 

더 좋은 방법이나 의견이 있으시다면 댓글 부탁드립니다 :)

댓글