728x90
2480번: 주사위 세개
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개만
www.acmicpc.net
이해하기
- 같은 눈이 3개가 나오면 10,000원 + (같은 눈) x 1,000원
- a == b && a == c
- 같은 눈이 2개만 나오는 경우에는 1,000원 + (같은 눈) x 100원
- a == b && a != c
- a == c && a != b
- b == c && b != a
- 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈) x 100원
- else 문 내 max 찾기
문제 풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int[] num = new int[3];
int idx = 0;
for (String n : s.split(" ")) {
num[idx++] = Integer.parseInt(n);
}
if (num[0] == num[1] && num[0] == num[2]) {
System.out.println(10000 + num[0] * 1000);
} else if (num[0] == num[1] && num[0] != num[2] || num[0] == num[2] && num[0] != num[1]) {
System.out.println(1000 + num[0] * 100);
} else if (num[1] == num[2] && num[0] != num[1]) {
System.out.println(1000 + num[1] * 100);
} else {
int max = num[0];
for (int i = 1; i < num.length; i++) {
if (max < num[i]) {
max = num[i];
}
}
System.out.println(max * 100);
}
}
}
BufferedReader가 훨씬 빨라서 잘 써보고 싶은데, 이렇게 " "을 두고 들어오는 int형들은 배열로 받을 수 밖에 없는걸까?
각각 int a, b, c로 받을 수 있으면 좀 더 편하게 작성할 수 있을 것 같은데... 고민해보아야겠다.
'JAVA > Coding Test Study' 카테고리의 다른 글
[Lv.2] 문자열 압축 : Java (0) | 2024.02.28 |
---|---|
[Lv.2] 거리두기 확인하기 : Java (0) | 2024.02.28 |
[Bronze_III] 백준 - 2884. 알람 시계 : Java (0) | 2024.02.21 |
[Silver_II] 백준 - 11725. 트리의 부모 찾기 : Java (0) | 2024.02.02 |
[Gold III] 백준 - 2830. 행성 X3 : Java (0) | 2024.01.28 |