■ 알고리즘/백준 JAVA
[ 알고리즘 ] 백준 2480번 문제 - 자바( JAVA )
업그레이드중
2022. 5. 24. 10:12
반응형
주의사항
※ 백준에서 정해진 출력 형식을 출력해야 한다.
※ 백준 알고리즘에서는 클래스명을 Main으로 해주어야 한다.
백준 2480번 문제
백준 알고리즘의 단계별 문제 풀기
2단계 < 조건문 >
▶ 해당 문제 링크
https://www.acmicpc.net/problem/2480
2480번: 주사위 세개
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개
www.acmicpc.net
코딩 하기
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();
sc.close();
if( a==b && a==c ) {
System.out.println( 10000 + a*1000 );
} else if( a==b && a!=c ) {
System.out.println( 1000 + a*100 );
} else if( a==c && a!=b ) {
System.out.println( 1000 + a*100 );
} else if( b==c && a!=b ) {
System.out.println( 1000 + b*100 );
} else {
int max = a;
if( max < b ) {
max = b;
}
if( max < c ) {
max = c;
}
System.out.println( max*100);
}
}
}
문제 해결
1) 주사위 경우에 대한 식 만들기
경우의 수 | 식 만들기 |
주사위 3개 모두 같다. | a == b && a == c |
주사위 2개가 같다. | a == b && a != c |
주사위 2개가 같다. | a == c && a != b |
주사위 2개가 같다. | b == c && a != b |
주사위 3개가 모두 다르다. | 없음 |
2) 최대값 구하기
• Math 클래스의 max 메서드 이용
- max( )메서드는 두 인자 값중 큰값을 리턴하는 함수
- 인자는 2개까지 가능하므로 ( b, c ) 비교 후, a와 ( b, c )중 큰값을 다시 비교한다.
Math.max( a , b )
• max 메서드를 이용한 풀이도 가능하다.
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();
sc.close();
if( a == b && a == c && b == c ) {
System.out.print( 10000 + ( a*1000 ) );
} else if( a == b || a == c ) {
System.out.print( 1000 + ( a*100 ) );
} else if( b == c ) {
System.out.print( 1000 + ( b*100 ) );
} else {
System.out.print( ( Math.max(a, Math.max(b, c) ) *100 ) );
}
}
}
반응형