본문 바로가기

Algorithm/CodeUp

[CodeUp_Java] Q1226 : 이번 주 로또

반응형

안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1226 : 이번 주 로또 (자바, JAVA)입니다.

Intro

Question

문제 설명

입력

첫 줄에 로또 당첨번호 6개와 보너스 번호 1개가 주어진다.
둘째 줄에 지혜가 가지고 있는 로또 번호 6개가 주어진다.

출력

지혜의 당첨 결과를 출력한다.
출력방법)
1등 = 1 출력, 2등 = 2 출력, 3등 = 3 출력, 4등 = 4 출력, 5등 = 5 출력, 꽝 = 0 출력

예시

  • 입력 :
    13 23 24 35 40 45 7
    2 6 7 23 40 44
  • 출력 : 0

Solution (풀이)

  • 풀이 : 메모리 11140, 시간 68
public class Answer1 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String str1 = br.readLine();
        String str2 = br.readLine();
        StringTokenizer st1 = new StringTokenizer(str1, " ");
        StringTokenizer st2 = new StringTokenizer(str2, " ");

        // 당첨 번호와 내가 선택한 번호를 배열에 저장
        int[] lottoNo = new int[7];
        int[] myNo = new int[6];

        // 토큰에서 하나씩 꺼내어 배열에 저장
        for (int i=0; i<6; i++) {
            lottoNo[i] = Integer.parseInt(st1.nextToken());
            myNo[i] = Integer.parseInt(st2.nextToken());
        }
        lottoNo[6] = Integer.parseInt(st1.nextToken());

        int count = 0;    // 맞은 개수 초기화
        int bonus = 0;    // 보너스 맞은 개수 초기화
        // 일치할 때 마다 +1
        for (int i=0; i<6; i++) {
            for (int j=0; j<6; j++) {
                if (lottoNo[i] == myNo[j]) {
                    count++;
                }
                if (lottoNo[6] == myNo[j]) {
                    bonus++;
                }
            }
        }

        // 보너스가 맞았을 때와 아닐 때를 분리하여 출력
        if (bonus==0) {
            if (count<=2) {
                System.out.println(0);
            } else if (count==3) {
                System.out.println(5);
            } else if (count==4) {
                System.out.println(4);
            } else if (count==5) {
                System.out.println(3);
            } else if (count==6){
                System.out.println(1);
            }
        } else {
            if (count<=2) {
                System.out.println(0);
            } else if (count==3) {
                System.out.println(5);
            } else if (count==4) {
                System.out.println(4);
            } else if (count==5) {
                System.out.println(2);
            } else if (count==6){
                System.out.println(1);
            }
        }
    }
}

Ranking(순위)

반응형