Java/백준알고리즘

[Java] 백준알고리즘 #2480 주사위 세개

Sehyeok20 2023. 9. 28. 11:07
반응형

백준알고리즘 #2480 주사위 세개

주사위 세 개를 던져 상금을 받는 게임이다.

먼저 3번 조건을 위해 최대값을 저장하는 조건문을 먼저 만든다.

int maxdice = 0;
if (dice1 > maxdice) {
    maxdice = dice1;
}
if (dice2 > maxdice) {
    maxdice = dice2;
}
if (dice3 > maxdice) {
    maxdice = dice3;
}

 

이후 각 조건에 맞춰 상금을 계산하면 완료.

전체 코드는 다음과 같다.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int dice1 = sc.nextInt();
        int dice2 = sc.nextInt();
        int dice3 = sc.nextInt();

        int maxdice = 0;
        if (dice1 > maxdice) {
            maxdice = dice1;
        }
        if (dice2 > maxdice) {
            maxdice = dice2;
        }
        if (dice3 > maxdice) {
            maxdice = dice3;
        }

        int price = 0;
        if (dice1 == dice2 && dice2 == dice3) {
            price = 10000 + (maxdice * 1000);
        } else if (dice1 == dice2) {
            price = 1000 + (dice1 * 100);
        } else if (dice2 == dice3) {
            price = 1000 + (dice2 * 100);
        } else if (dice3 == dice1) {
            price = 1000 + (dice3 * 100);
        } else {
            price = maxdice * 100;
        }

        System.out.println(price);
        sc.close();
    }
}

조건 2를 위해 조건문이 3개나 들어가서 코드가 지저분해보인다.. 더 좋은 방법이 있을 것 같은데...

반응형