Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 27 | 28 | 29 | 30 | 31 |
Tags
- Linked List
- pwm
- behavioral modeling
- BASYS3
- dataflow modeling
- soc 설계
- LED
- ATMEGA128A
- Edge Detector
- test bench
- verilog
- atmega 128a
- vivado
- half adder
- prescaling
- D Flip Flop
- stop watch
- gpio
- Pspice
- DHT11
- uart 통신
- structural modeling
- KEYPAD
- hc-sr04
- ring counter
- FND
- java
- Algorithm
- Recursion
- i2c 통신
Archives
- Today
- Total
거북이처럼 천천히
알고리즘 (6월 3일) 본문
1. 문제 (백준, 2480, 주사위 세계)
https://www.acmicpc.net/problem/2480
2. 생각
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.
- 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.
- 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.
- 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다.
입력받은 3개의 주사위 값을 변수(A,B,C)에 저장하는 동시에 ArrayList를 만들어 리스트에 저장한다.
그리고, if문을 통해 각각의 경우에 대해서 상금(totalReward)를 계산하고, 마지막인 경우(모두 다른 눈이 나온 경우)에는
저장해 놓은 리스트와 for문을 통해 최대 값을 찾아서 상금(totalReward)를 계산하고자 한다.
3. 풀이 및 코드 분석
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Arrays;
public class Main{
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int A = scan.nextInt();
int B = scan.nextInt();
int C = scan.nextInt();
ArrayList<Integer> numbers = new ArrayList<>(Arrays.asList(A,B,C));
int totalReward;
if((1>A || A>6)||(1>B || B>6)||(1>C || C>6)) {
System.out.println("You entered the wrong numbers.\n");
}else {
if((A==B)&&(B==C)) { // 같은 눈이 3개 나온 경우
totalReward = 10000 + A*1000;
}else if((A==B)||(A==C)) { // 같은 눈이 2개만 나오는 경우
totalReward = 1000 + A*100;
}else if(B==C) { // 같은 눈이 2개만 나오는 경우
totalReward = 1000 + B*100;
}else { // 모두 다른 눈이 나오는 경우
int Max = numbers.get(0);
for(int i=1; i<3; i++) {
if(numbers.get(i) > Max) {
Max = numbers.get(i);
}
}
totalReward = Max*100;
}
System.out.println(totalReward);
}
}
}
'Algorithm > 알고리즘 문제 풀이' 카테고리의 다른 글
알고리즘 (6월 7일) - (2) (0) | 2022.06.07 |
---|---|
알고리즘 (6월 7일) (0) | 2022.06.07 |
알고리즘 (6월 6일) (0) | 2022.06.06 |
알고리즘 (6월 5일) (0) | 2022.06.06 |
알고리즘(6월 2일) (0) | 2022.06.02 |