본문 바로가기
[Baekjoon Online Judge] 풀이

[Baekjoon Online Judge] 백준 2476번: 주사위 게임 파이썬 풀이 - 알고리즘 코딩 문제 해설 python

by codeomni 2023. 2. 15.
반응형

 

안녕하세요.

이번 포스팅은 백준 온라인 저지의 2476 문제 풀이입니다.

문제 이름은 "주사위 게임" 입니다.

 

 

문제


문제 링크는 바로 밑의 링크를 확인해주세요.

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

 

2476번: 주사위 게임

첫째 줄에는 참여하는 사람 수 N이 주어지고 그 다음 줄부터 N개의 줄에 사람들이 주사위를 던진 3개의 눈이 빈칸을 사이에 두고 각각 주어진다. 

www.acmicpc.net

 

 

풀이


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
= int(input())
res = 0
for i in range(N):
    num = input().split()
    num.sort()
    a, b, c = map(int, num)
    if a==and b==c:
        money = 10000 + (a * 1000)
    elif a==or a==c:
        money = 1000 + (b * 100)
    elif b == c:
        money = 1000 + (b * 100)
    else:
        money = c * 100
    if money > res :
        res = money
print(res)
cs

 

1. 주사위 게임에 참여하고 있는 사람의 수 N을 입력 받습니다.

 

2. 처리하기 이전에 가장 많은 상금을 저장할 변수를 선언합니다.

 

3. 사람의 수 N만큼 for문을 반복합니다.

 

4. 주사위의 눈을 공백 기준으로 입력 받습니다. 이때 정렬하기 위해 문자로 입력 받습니다.

 

5. 입력 받은 문자를 정렬합니다.

 

6. map() 함수를 사용해 int 형으로 변환합니다.

 

7~8. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 됩니다.

 

9~12. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 됩니다.

 

13~14. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 됩니다.

 

15~16. 계산된 값이 결과 값보다 클 경우 결과 값을 변경합니다.

 

17. 첫째 줄에 가장 많은 상금을 받은 사람의 상금을 출력합니다.

댓글