티스토리 뷰

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

 

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

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

programmers.co.kr

 

14번째 테스트 케이스가 통과 안되어서 보았는데 0의 갯수가 전혀 없고 불일치의 케이스의 예외를 처리 해주었더니 통과되었다. 

 

 

class Solution {
    public int[] solution(int[] lottos, int[] win_nums) {
        int[] answer = {0,0};
        // 0은 무조건 당첨 또는 제외. 
        
        int same =0;
        int zero_cnt=0;
        for(int i=0; i<lottos.length ; i++){
                    if(lottos[i]==0) zero_cnt++;
            for(int j=0; j<lottos.length; j++){
                    if(win_nums[i]==lottos[j]) same++;            
            }
        }
        // 3개일치 4등, 4개일치 3등 , 5개일치 2등 , 6개일치 1등
        
        answer[0] = 7-same-zero_cnt;
        if(zero_cnt==6){
            answer[0]=1;
            answer[1]=6;
        }
        else if(zero_cnt==0&&same==0){
             answer[0]=6;
             answer[1]=6;
        }
        else{
            answer[1] = answer[0]+zero_cnt;
        }
    
        System.out.println(same+","+zero_cnt);
        
        return answer;
    }
}
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31