문제
https://www.acmicpc.net/problem/2480
2480번: 주사위 세개
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 같은 눈이 2개
www.acmicpc.net
내가 작성한 코드
import java.util.*;
public class class2_7 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String num = sc.nextLine();
String[] num2 = num.split(" ");
int[] nums = new int[num2.length];
for(int i = 0; i<num2.length; i++){
nums[i] = Integer.parseInt(num2[i]);
}
Arrays.sort(nums);
if(nums[0]==nums[1] && nums[1]==nums[2]){
System.out.println(10000+nums[0]*1000);
}
else if(nums[0]==nums[1]||nums[1]==nums[2]){
System.out.println(1000+nums[1]*100);
}
else if(nums[2]==nums[0]){
System.out.println(1000+nums[0]*100);
}
else{
System.out.println(nums[2]*100);
}
}
}
String형으로 입력 받은 후 split과 Integer.parseInt를 이용해서 배열에 저장해주기를 수행했다
세 개의 수가 모두 같은 경우
두 가지만 같은 경우
다 다른 경우를 if문의 조건 부분 내에 나열하고 그에 해당하는 상금 값을 계산해서 출력하도록 해주었다
뭔가 두 가지만 같은 경우 부분을 else if 하나만 쓰고 {}안에서 뭔갈 하면 코드가 더 짧아질 수도 있을 거 같은데...쩝
'자바 > 백준' 카테고리의 다른 글
[백준 4101] 크냐? (0) | 2022.08.09 |
---|---|
[백준 2743] 단어 길이 재기 (0) | 2022.07.27 |
[백준 2525] 오븐 시계 (0) | 2022.07.14 |
[백준 2884] 알람 시계 (0) | 2022.07.14 |
[백준 14681] 사분면 고르기 (0) | 2022.07.14 |