코딩/백준
[백준][C] 2480. 주사위 세 개
rivermoon
2022. 10. 2. 01:26
https://www.acmicpc.net/problem/2480
주사위 세 눈의 값이 한 줄에 공백 한 칸을 사이에 두고 주어집니다.
상금은 다음과 같습니다.
같은 눈이 3개인 경우 : 10000 + (같은 눈) * 1000
같은 눈이 2개인 경우 : 1000 + (같은 눈) * 100
모두 다른 경우 : (가장 큰 눈) * 100
예제 입력
3 3 6
예제 출력
1200
해결 방법
주사위의 눈의 값을 각각 a, b, c로 생각했을 때,
3개가 모두 같은 경우 : a와 b가 같고, a와 c가 같은 경우
2개가 같은 경우 : a와 b가 같거나, a와 c가 같거나, b와 c가 같은 경우
모두 다른 경우에서 최댓값을 찾는 방법 :
a가 b, c보다 큰 경우 : a가 최댓값
b가 a, c보다 큰 경우 : b가 최댓값
c가 a, b보다 큰 경우 : c가 최댓값
코드
#include <stdio.h>
int main(){
int a, b, c, p, m;
scanf("%d %d %d", &a, &b, &c);
if ((a == b) && (b == c))
p = 10000 + a * 1000;
else if ((a == b) || (a == c))
p = 1000 + a * 100;
else if ((b == c))
p = 1000 + b * 100;
else{
m = a;
if (b > a && b > c) m = b;
else if (c > a && c > b) m = c;
/* a를 임의로 최댓값으로 두고 b와 c의 경우만 판단하였습니다. */
p = m * 100;
}
printf("%d", p);
}