※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 2476번 문제인 주사위 게임이다.
문제는 아래 링크를 확인하자.

www.acmicpc.net/problem/2476

 

2476번: 주사위 게임

첫째 줄에는 참여하는 사람 수 N이 주어지고 그 다음 줄부터 N개의 줄에 사람들이 주사위를 던진 3개의 눈이 빈칸을 사이에 두고 각각 주어진다. 

www.acmicpc.net

이 문제에서는 문제에 주어진 대로, 나온 주사위 눈에 따라 조건문을 잘 작성해주면 된다.

다음과 같이 경우를 나누어 계산할 수 있다.

 

1) 세 주사위의 눈이 모두 같은 경우

2) 세 주사위의 눈이 모두 다른 경우

3) 두 개의 주사위의 눈이 같고 나머지 하나와 다른 경우:

3-1) 첫번째 주사위와 두번째 주사위의 눈이 같은 경우

3-2) 두번째 주사위와 세번째 주사위의 눈이 같은 경우

3-3) 세번째 주사위와 첫번째 주사위의 눈이 같은 경우

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);

    int ans = 0;
    int N; cin >> N;
    for (int i = 0;i < N;i++) {
        int current;
        int x, y, z; cin >> x >> y >> z;
        if (x != y && y != z && z != x) current = max(max(x, y), z) * 100;
        else if (x == y && y == z) current = 10000 + x * 1000;
        else if (x == y) current = 1000 + x * 100;
        else if (y == z) current = 1000 + y * 100;
        else current = 1000 + z * 100; // (z == x)
        if (current > ans) ans = current;
    }

    cout << ans;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 1182 // C++] 부분수열의 합  (0) 2021.04.24
[BOJ 1120 // C++] 문자열  (0) 2021.04.23
[BOJ 2075 // C++] N번째 큰 수  (0) 2021.04.21
[BOJ 2810 // C++] 컵홀더  (0) 2021.04.20
[BOJ 2437 // C++] 저울  (0) 2021.04.19

+ Recent posts