Q) BAEKJOON / JAVA / 2480 : 주사위 세개
https://www.acmicpc.net/problem/2480
※ if 조건문
- 가장 기본적인 조건문 이며, 조건에 따라 코드의 실행 흐름을 다르게 동작하도록 제어하는 문장입니다.
if(조건문 1) {
실행문 1; //조건문 1이 true일 때 실행
}else if(조건문 2) {
실행문 2; //조건문 2가 true일 때 실행
}else {
실행문 3; //조건문 1과 2가 false일 때 실행
}
※ Math.max()
- 두 값중 큰값 리턴
int MAX = Math.max(5, 10);
System.out.println(MAX); //10 출력
A)
- [1] Scanner
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
//스캐너 선언
Scanner sc = new Scanner(System.in);
//nextInt()활용 정수형으로 저장
int A = sc.nextInt();
int B = sc.nextInt();
int C = sc.nextInt();
//정수형 변수 money 선언
int money = 0;
//if 조건문 사용
//1) 세 주사위 모두 같을 시
if(A == B && A == C) {
money = 10000 + (A * 1000);
//2) 세 주사위 모두 다를 시
// 나머지 주사위 들과 비교 하며 가장 큰 주사위 찾기
}else if((A != B) && (A != C) && (B != C)) {
if(A > B && A > C) {
money = A * 100;
}else if(B > A && B > C) {
money = B * 100;
}else if(C > A && C > B) {
money = C * 100;
}
//3) 두 주사위 같을 시
// 비교하며 같은 값 가진 주사위 칮기
}else {
if(A == B && A != C) {
money = 1000 + (A * 100);
}else if(A == C && A != B) {
money = 1000 + (A * 100);
}else if(B == C && B != A) {
money = 1000 + (B * 100);
}
}
//출력
System.out.println(money);
//스캐너 종료
sc.close();
}
}
- [2] BufferedReader + Math.max()
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String args[]) throws IOException {
//BufferedReader 선언
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//readLine()으로 행 읽어오기
String str = br.readLine();
//StringTokenizer로 토큰 단위로 분할
StringTokenizer st = new StringTokenizer(str, " ");
//nextToken()으로 토큰 값 가져오기
//parseInt()로 정수형으로 변환
int A = Integer.parseInt(st.nextToken());
int B = Integer.parseInt(st.nextToken());
int C = Integer.parseInt(st.nextToken());
//정수형 변수 money 선언
int money = 0;
//if 조건문 사용
//1) 세 주사위 모두 같을 시
if(A == B && A == C) {
money = 10000 + (A * 1000);
//2) 세 주사위 모두 다를 시
// Math.mat()활용 가장 큰 주사위 찾기
}else if((A != B) && (A != C) && (B != C)) {
money = Math.max(A, Math.max(B, C)) * 100;
//3) 두 주사위 같을 시
// 비교하며 같은 값 가진 주사위 칮기
}else {
if(A == B && A != C) {
money = 1000 + (A * 100);
}else if(A == C && A != B) {
money = 1000 + (A * 100);
}else if(B == C && B != A) {
money = 1000 + (B * 100);
}
}
//출력
System.out.println(money);
}
}