본문 바로가기

백준/C

[BaeKJoon/C] 백준2490 c 윷놀이

반응형

https://www.acmicpc.net/problem/2490

 

2490번: 윷놀이

우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때 도(배 한

www.acmicpc.net

 

문제

우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때

도(배 한 개, 등 세 개),

개(배 두 개, 등 두 개),

걸(배 세 개, 등 한 개),

윷(배 네 개),

모(등 네 개)

중 어떤 것인지를 결정하는 프로그램을 작성하라.

 

풀이

입력받을 때 0의 개수를 세서 상황에 맞게 출력하는게 이번 문제의 핵심이다.

0이 0개면 모E

0이 1개면 도A

0이 2개면 개B

0이 3개면 걸C

0이 4개면 윷D

cnt라는 변수를 선언해서 0의 개수를 카운트 한다.

 

코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
 
int main() {
 
    int n;                              /* for문밖에 cnt를 0으로 초기화 해버리면 3번의 반목문안에 4번의 반목문의 데이터가
 
                                            누적 되기 때문에 이상한 값이 나오고 하나의 값밖에 나오지 않는다.*/
        for (int i = 0; i < 3; i++) {
            int cnt = 0;                   // 1번째 4번의 반복문이 끝나고 새로운 2번쨰 4번의반복문이 시작할때 cnt가 0으로 초기화된다.
 
                                                  //그럼 3개의 값이 나온다.
            for (int i = 0; i < 4; i++) {
                scanf("%d"&n);
                if (n == 0)
                    cnt++;                        //n이 0이면 카운트한다.
 
 
            }
            if (cnt == 0)
                printf("E\n");
 
 
            else if (cnt == 1)
                printf("A\n");
 
 
            else if (cnt == 2)
                printf("B\n");
 
 
            else if (cnt == 3)
                printf("C\n");
 
 
            else if (cnt == 4)
                printf("D\n");
 
 
        }
}
cs

 

 

https://www.acmicpc.net/problem/2490

 

2490번: 윷놀이

우리나라 고유의 윷놀이는 네 개의 윷짝을 던져서 배(0)와 등(1)이 나오는 숫자를 세어 도, 개, 걸, 윷, 모를 결정한다. 네 개 윷짝을 던져서 나온 각 윷짝의 배 혹은 등 정보가 주어질 때 도(배 한

www.acmicpc.net

 

반응형