728x90

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

 

2480번: 주사위 세개

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

www.acmicpc.net

문제)

1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.

  1. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다. 
  2. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다. 
  3. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×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개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오.

풀이)

x, y, z=map(int, input().split())
if(x==y==z):				#입력받은 x, y, z값이 모두 같은 경우
    print(10000+x*1000)
elif(x==y):
    print(1000+x*100)		#두 주사위만 같은 값일 때의 경우
elif(x==z):
    print(1000+x*100)		#두 주사위만 같은 값일 때의 경우
elif(y==z):
    print(1000+y*100)		#두 주사위만 같은 값일 때의 경우
else:
    print(max(x, y, z)*100) #모두 다른 값일때, 최대값을 구하기

 

이 문제는 굉장히 단순하고 쉬운문제였다!

꼭 알아야 풀 수 있는 개념이 있다면 바로 max()일 것 같다. 파이썬 내장함수에 하나로 max, min, map등이 있다.

max(): 파이썬 최대값 함수

>>>print(max(2, 8, 3, 5))

8

min(): 파이썬 최소값 함수

>>>print(max(2, 8, 3, 5))

2

728x90