문제
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.
같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.
같은 눈이 2개만 나오는 경우에 1,000원+(같은 눈)×100원의 상금을 받게 된다.
모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다.
예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다.
또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다.
3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 6이므로 6×100으로 계산되어 600원을 상금으로 받게 된다.
3개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오.
제출한 답안
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int dice1 = s.nextInt();
int dice2 = s.nextInt();
int dice3 = s.nextInt();
int price = 0;
int max = 0;
if(dice1==dice2 && dice2 == dice3) {
price = 10000+dice1*1000;
}else if(dice1==dice2 || dice1==dice3) {
price = 1000+dice1*100;
}else if(dice2==dice3) {
price = 1000+dice2*100;
}else {
max = Math.max(dice1, dice2);
max = Math.max(max, dice3);
price = max*100;
}
System.out.println(price);
}
}
- 주사위 3개의 눈을 담는 변수 dice1,dice2,dice3생성
- 상금은 price에, 세개의 눈이 다를 때 최대값을 구하기 위해 max변수 생성
- 주사위 눈 3개가 일치할 경우, 2개가 일치할 경우, 모두 다를경우 if조건문을 사용해 상금 계산
- 주사위 눈 2개만 일치할 경우는 dice1와 2, 3을 먼저 비교한 다음 상금은 dice1눈으로 곱하고
- dice2와 3이 같을 경우에 dice2눈을 곱한 값을 상금에 담아준다
- 눈이 모두 다를 때 최대값을 비교하여 max값에 담고 상금을 계산해 출력
'Etc > 코딩테스트' 카테고리의 다른 글
[백준] 10950번 A+B-3 문제풀이 자바 JAVA for반복문 (0) | 2023.09.03 |
---|---|
[백준] 2739번 - 구구단 문제풀이 자바, JAVA 반복문 for사용 (0) | 2023.09.03 |
[백준] 2552번 - 오븐 시계 문제풀이 자바 JAVA - 조건문 사용 (0) | 2023.09.01 |
[백준] 2884번 - 알람시계 문제풀이 자바 JAVA 조건문 사용 (0) | 2023.09.01 |
[백준] 14681번 - 사분면 고르기 자바 JAVA 조건문 사용 (0) | 2023.09.01 |