자바알고리즘 - 입출력 - 2480 주사위 세개
문제
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.
- 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.
- 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.
- 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다.
예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다. 또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다. 3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 6이므로 6×100으로 계산되어 600원을 상금으로 받게 된다.
3개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오.
생각
1. A == B && B == C
2. A == B or A == C or B== C
한 후 A==B 의 경우 A==C 의 경우 B==C의 경우로 나눔
3. 각자 다른 수 일 경우에는 if문으로 가장 큰 수를 찾아서 계산
코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.Buffer;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(bf.readLine());
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
int C = Integer.parseInt(st.nextToken());
if (A == B && B == C) {
System.out.println(10000 + (A * 1000));
}
else if ((A == B) || (A == C) || (B == C)) {
if (A == B) {
System.out.println(1000 + (A * 100));
} else if (A == C) {
System.out.println(1000 + (A * 100));
} else {
System.out.println(1000 + (B * 100));
}
}
else {
if (A > B) {
int big_num = A;
if (big_num > C) {
System.out.println(big_num * 100);
} else {
System.out.println(C * 100);
}
} else {
int big_num = B;
if (big_num > C) {
System.out.println(big_num * 100);
} else {
System.out.println(C * 100);
}
}
}
}
}
'알고리즘 > 입출력,문자열' 카테고리의 다른 글
자바알고리즘 - 문자열 - 백준 2675 문자열 반복 (0) | 2024.10.07 |
---|---|
자바알고리즘 - 문자열 - 백준 10809 알파벳 찾기 (0) | 2024.10.07 |
자바알고리즘 - 입출력 - 백준 2525 오븐 시계 (3) | 2024.09.30 |
자바알고리즘 - 입출력 - 백준 2884 알람 시계 (0) | 2024.09.30 |
자바알고리즘 - 입출력 - 2753 윤년 (0) | 2024.09.30 |