알고리즘/문제풀이 - 백준
[백준 2480번] 주사위 세개(JAVA)
DJDU
2022. 10. 25. 00:31
시행착오(Trial&Error)
분기를 수정하는 과정을 거쳤다.
풀이(Solution)
조건문 문제 답게 분기를 어떻게 할 것인가를 파악하는 것이 핵심이다. 즉, '분류'를 잘 해야 한다.
같은 눈이 3개인 경우, 2개인 경우, 모두 다를 경우를 어떻게 분기할지 잘 생각해야 한다.
코드(Code)
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] dice = new int[3];
for(int i = 0 ; i < dice.length; i++) {
dice[i] = sc.nextInt();
}
// 1. 같은 눈이 3개 나오는 경우
if(dice[0] == dice[1]) {
if(dice[0] == dice[2]) {
System.out.println(10000 + (dice[0] * 1000));
// 2. 같은 눈이 2개 나오는 경우
} else if(dice[1] != dice[2]) {
System.out.println(1000 + (dice[0] * 100));
}
} else if(dice[0] != dice[1]) {
// 2. 같은 눈이 2개 나오는 경우
if((dice[0] == dice[2]) || (dice[1] == dice[2])) {
System.out.println(1000 + (dice[2] * 100));
} else {
// 3. 모두 다른 눈이 나오는 경우
// (그 중 가장 큰 눈)×100원
int max = dice[0];
for(int i = 1; i < dice.length; i++) {
if(max < dice[i]) {
max = dice[i];
}
}
System.out.println(max * 100);
}
}
}
}