※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※
이번에 볼 문제는 백준 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 |