카카오- 로또의 최고 순위와 최저 순위(java)

최준근·2022년 1월 20일
0

java알고리즘

목록 보기
52/63

문제 설명


생각하기

실제로 맞은 개수와 0의 개수를 따로 구한다.
두개를 더한값이 최고순위 실제로 맞은값이 최저순위가 된다.

내 풀이

class Solution {
    public int[] solution(int[] lottos, int[] win_nums) {
        int[] answer = {0,0};
        int cnt =0;
        int zero =0;
        for(int i : lottos){
            if (i==0){
                zero++;
                continue;
            }
            for(int j : win_nums){
                if(i ==j) cnt++;
                
            }
        }
       
        int maxNum = grade(cnt+zero);
        int minNum = grade(cnt); 
        
        answer[0] = maxNum;
        answer[1] = minNum;
        
        return answer;
    }
    
         public int grade(int i){
             if( i == 6 ) return 1;
            else if( i == 5) return 2;
            else if( i == 4) return  3;
            else if( i == 3) return  4;
            else if( i == 2) return  5;
            else return 6;
        }
}

함수형 코딩으로 문제를 풀어보았습니다.
아무래도 main함수 안에 코드를 전부 넣는것보다 가독성이 좋은 것 같네요.

profile
느려도 좋으니 꾸준하게

0개의 댓글