코딩테스트연습/프로그래머스

[프로그래머스 - JAVA] 2021 Dev-Matching: 웹 백엔드 개발자(상반기) 로또의 최고 순위와 최저 순위

:)jun 2021. 10. 24. 14:35

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

 

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

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

programmers.co.kr

class Solution {    
    public int[] solution(int[] lottos, int[] win_nums) {
        
        
        int numOfSameNum = 0;
		int numOf0 = 0;
		
		for(int i=0; i<lottos.length; i++) {
			for(int j=0; j<win_nums.length; j++) {
				if(lottos[i]==win_nums[j]) {
					numOfSameNum++;
				}
			}
			
			if(lottos[i]==0) {
				numOf0++;
			}
		}
		
		int[] answer = new int[2];
		
		switch(numOfSameNum + numOf0 ) {
		case 6 : answer[0] = 1; break;
		case 5 : answer[0] = 2; break;
		case 4 : answer[0] = 3; break;
		case 3 : answer[0] = 4; break;
		case 2 : answer[0] = 5; break;
		default : answer[0] = 6; break;
		}
		switch(numOfSameNum) {
		case 6 : answer[1] = 1; break;
		case 5 : answer[1] = 2; break;
		case 4 : answer[1] = 3; break;
		case 3 : answer[1] = 4; break;
		case 2 : answer[1] = 5; break;
		default : answer[1] = 6; break;
		}
        
        return answer;
    }
}