728x90
반응형

문제 : https://codeup.kr/problem.php?id=1226

 

이번 주 로또

 로또 규칙에 대한 이해가 부족한 경우 인터넷 검색을 통해 알아보시기 바랍니다.

codeup.kr

 

문제 설명

주희는 로또 매니아다.

매주 로또 한장을 사고 토요일이면 대박을 기대하면서 당첨번호를 확인한다.

몇 주 전 주희는 로또 결과가 4등이었는데 확인을 잘못해서 5등인줄 알고 그냥 바꾸기 귀찮아서 버렸었다.

이러한 사태가 다시는 일어나지 않게 하기 위해 우리가 프로그램을 만들어 주자.

로또 순위 매기는 방법)

등수 방법
1등 당첨번호 6개 일치
2등 당첨번호 5개 일치 + 보너스번호 일치
3등 5개 번호 일치
4등 4개 번호 일치
5등 3개 번호 일치
2개 이하 일치

예)

13 23 24 35 40 45 7     ===> 로또 당첨번호 + 보너스 번호

 2  6  7 23  40 44      ====> 주희가 가진 로또 번호

따러서 주희는 "꽝"

 

 

[그림1] 입 출력 형식
[그림2] 입 출력 예제, 도움말

 

 

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
    int a1, a2, a3, a4, a5, a6, bonus;
    int b1, b2, b3, b4, b5, b6;
    
    int i,j,bns = 0;
    
    int same = 0;
    
    scanf("%d %d %d %d %d %d %d",&a1,&a2,&a3,&a4,&a5,&a6,&bonus);
    
    scanf("%d %d %d %d %d %d",&b1,&b2,&b3,&b4,&b5,&b6);
    
    int list1[6] = {a1, a2, a3, a4, a5, a6};
    int list2[6] = {b1, b2, b3, b4, b5, b6};
    
    for(i=0;i<6;i++)
    {
        for(j=0;j<6;j++)
        {
            if( list1[i]==list2[j] )
                same = same + 1;
        }      
    }
       
    for(i=0;i<6;i++)
    {
        if(bonus==list2[i])
        {
            bns = 1;           
        }
    }  
    
    if( same==6 )
        printf("1");
    
    else if( same==5 && bns == 1 )
        printf("2");
    
    else if( same==5 && bns==0 )
        printf("3");
    
    else if( same == 4 )
        printf("4");
    
    else if( same == 3 )
        printf("5");
    
    else
        printf("0");
    
    return 0;
}


728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기