[Programmers / Level 1] 77484. 로또의 최고 순위와 최저 순위

이하얀·2024년 11월 9일
0

🕊️ 프로그래머스

목록 보기
66/82

💡 Info




입출력 조건




입출력 예시




문제 이해


  • 로또 번호가 주어지고, 그 숫자를 바탕으로 당첨 가능한 최고 순위 및 최저 순위를 반환하면 되는 문제


알고리즘


풀이 시간 : 38분

  • 0의 개수 세기
  • lottos, win_nums 비교 -> 숫자 일치하는지 비교
  • 최고 순위: 맞춘 개수 + 0의 개수
  • 최저 순위: 실제 맞춘 개수
import java.util.*;

class Solution {
    public int[] solution(int[] lottos, int[] win_nums) {
        int[] answer = new int[2];
        int[] rank = {6, 6, 5, 4, 3, 2, 1};
        int zeroCount = 0;
        int matchCount = 0;

        for (int num : lottos) {
            if (num == 0) zeroCount++;
        }

        for (int num : lottos) {
            for (int winNum : win_nums) {
                if (num == winNum) {
                    matchCount++;
                    break;
                }
            }
        }

        answer[0] = rank[matchCount + zeroCount];
        answer[1] = rank[matchCount];

        return answer;
    }
}


결과

profile
언젠가 내 코드로 세상에 기여할 수 있도록, BE&Data Science 개발 기록 노트☘️

0개의 댓글