728x90
반응형

2021.06.26

문제명 : 2021 Dev-Matching: 웹 백엔드 개발자(상반기) - 로또의 최고 순위와 최저 순위

사용언어 : Javascript

개발 시간 : 10분

 

 

코딩테스트 연습 - 로또의 최고 순위와 최저 순위

로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호

programmers.co.kr

 

📋 문제 설명

초등학교때 수학시간에 자주 등장했던 물을 엎질러 종이가 일부 찢어졌을때 값을 유추하는 문제입니다.

최저 순위 = 보여지는 숫자 안에서 맞은 갯수

최고 순위 = 보여지는 순자 안에서 맞은 갯수 + 안보이는 숫자(0)이 모두 당첨번호라는 가정

 

📢 입출력 예

 

🔑 문제 풀이

function solution(lottos, win_nums) {
    var answer = [];
    var cnt = 0; // 0갯수
    var win = 0; // 맞은 로또 갯수
    
    
    for(var i=0; i<lottos.length; i++){
        if(lottos[i] == 0){
            cnt++;
        }else{
            for(var j=0; j<win_nums.length; j++){
                if(win_nums[j] == lottos[i]){
                    win++;
                }
            }
        }
    }
    
    var min = rank(win);
    var max = rank(win+cnt);
    
    answer = [max,min];
    
    return answer;
}


function rank(win){
    var rank = 0;
    
    if(win == 6) rank = 1;
    else if(win == 5) rank = 2;
    else if(win == 4) rank = 3;
    else if(win == 3) rank = 4;
    else if(win == 2) rank = 5;
    else rank = 6;
    
    return rank;
}
728x90
반응형

+ Recent posts