[백준 / Java] 2480번 : 주사위 세개

개발자가 되고 싶어요 ㅣ 2023. 1. 28. 07:06

https://www.acmicpc.net/problem/2480

 

2480번: 주사위 세개

1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.  같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.  같은 눈이 2개

www.acmicpc.net

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        int price = 0;
 
        if (a==& a==& b==c) {
            price += 10000 + (a * 1000);
        } else if (a!=& a!=& b!=c) {
            price += Math.max(Math.max(a,b),c) * 100;
        } else {
            if (a==b){
                price += 1000 + (100 * a);
            } else if (a==c) {
                price += 1000 + (100 * a);
            } else {
                price += 1000 + (100 * b);
            }
        }
        System.out.println(price);
    }
}
cs

 

자바에서는 최댓값을 구할때 Math 클래스에서 max라는 메소드를 사용하여 구할 수 있다.

하지만 max 메소드는 비교하는 값을 두 개 밖에 못 받기 때문에 세 개의 값  중 최댓값을 찾으려면 먼저 두 가지 중 최댓값과 나머지를 비교하여 최종적으로 세가지 값 중 최댓값을 찾아야한다. ex) Math.max(Math.max(a,b),c)