Sujin-Han
Sujin's 개발로그
Sujin-Han
전체 방문자
오늘
어제
  • 분류 전체보기 (20)
    • Front-end (0)
    • Back-end (1)
    • 기타 프로그래밍 (0)
    • 개발도구 (0)
    • Database (0)
    • Algorithm (19)
    • 자격증 (0)
    • 기타 (0)

인기 글

최근 글

최근 댓글

태그

  • 2525
  • 2884번
  • 9498
  • java
  • 초기세팅
  • A+B-3
  • 두수비교하기
  • 25304
  • 2480
  • 알고리즘
  • 주사위 세개
  • 2588
  • 2753
  • 백준 #알고리즘 #Algorithm
  • 10950
  • 사칙연산
  • 오븐시계
  • 백준
  • Algorithm
  • 시험성적

티스토리

hELLO · Designed By 정상우.
Sujin-Han

Sujin's 개발로그

[백준] 2. 조건문 - 2480. 주사위 세개 (Java11)
Algorithm

[백준] 2. 조건문 - 2480. 주사위 세개 (Java11)

2023. 1. 20. 22:48
728x90

 문제 

 풀이 

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();

		// 1. 만약 모든 변수가 다르면
		int max = 0;

		if (a != b && b != c && a != c) {
			// 만약 a > b 라면
			if (a > b) {
				// c > a > b 일때
				if (c > a) {
					max = c;
				} else {
					max = a;
				}
			} else {
				// c > b > a 일때
				if (c > b) {
					max = c;
				} // b > (a, c)
				else {
					max = b;
				}

			}
			System.out.println(max * 100);
		}

		// 2. 적어도 한 쌍 이상의 서로 같은 변수가 존재할 경우
		else {
			// 모든 변수가 같은 경우
			if (a == b && a == c) {
				System.out.println(10000 + a * 1000);
			} else {
				// a가 b 혹은 c랑만 같은 경우
				if (a == b || a == c) {
					System.out.println(1000 + a * 100);
				}
				// b가 c랑 같은 경우
				else {
					System.out.println(1000 + b * 100);
				}

			}
		}
 
    }
}

3개의 변수가 모두 다른지, 아닌지를 판단하는 것이 중요하다
만약, 모두 다른게 아니라면 적어도 하나 이상의 같은 변수가 존재한다.

1. 3개의 변수가 모두 다를 때는 하나 조건이 더 걸린다. 여기서 큰 수를 찾아야 했다.
     가장 원시적인 방법으로 풀었고 3개의 변수중에서 큰 값을 담기 위해 max로 변수를 하나 생성해 주었다.
     물론 Java에서 제공하고 있는 Math.max 함수를 활용하여 큰 수가 무엇인지를 알 수도 있다.

2. 적어도 하나 이상일 경우면 모두 같을 경우도 포함이다
     2-1) 모두 같을 때 논리연산자 &&를 사용해서 풀었다
     2-2) 하나 이상 같을경우 논리연산자 ||와 조건문을 하나 더 썼다.

 출처 

https://www.acmicpc.net/problem/2480

 

2480번: 주사위 세개

1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.  같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.  같은 눈이 2개

www.acmicpc.net

 

'Algorithm' 카테고리의 다른 글

[백준] 3. 반복문 - 10950. A+B - 3 (Java11)  (0) 2023.01.21
[백준] 3. 반복문 - 2739. 구구단 (Java11)  (0) 2023.01.21
[백준] 2. 조건문 - 2525. 오븐 시계 (Java11)  (0) 2023.01.20
[백준] 2. 조건문 - 2884. 알람 시계 (Java11)  (0) 2023.01.20
[백준] 2. 조건문 - 14681. 사분면 고르기 (Java11)  (0) 2023.01.20
'Algorithm' 카테고리의 다른 글
  • [백준] 3. 반복문 - 10950. A+B - 3 (Java11)
  • [백준] 3. 반복문 - 2739. 구구단 (Java11)
  • [백준] 2. 조건문 - 2525. 오븐 시계 (Java11)
  • [백준] 2. 조건문 - 2884. 알람 시계 (Java11)
Sujin-Han
Sujin-Han

티스토리툴바