BOJ/백준-2480-python

cosmos·2022년 3월 2일
0
post-thumbnail

문제

풀이

  1. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.
  2. 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.
  3. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다.

-> 위 규칙에 따라 조건문을 설정했다.
-> 같은 눈이 2개 나오는 경우 같은 눈을 판별하기 위해 DP 알고리즘처럼 list를 1~6까지 0으로 초기화하였고 해당 값에 맞는 주사위가 나오면 해당 값에 +1 증감식을 하였다.
-> 같은 눈은 list에서 가장 값이 큰 경우이므로 index 함수로 해당 값을 찾았다.

코드

# https://www.acmicpc.net/problem/2480
# boj, 2480: 주사위새개, python3
import sys

input = sys.stdin.readline

def solve(a, b, c):
    if a == b == c:
        return 10000 + a*1000
    elif a != b and a != c and b != c:
        return max(a, b, c) * 100
    else:
        d = [0] * 7
        d[a] += 1
        d[b] += 1
        d[c] += 1

    return 1000 + (d.index(max(d)) * 100)

if __name__ == '__main__':
    a, b, c = map(int, input().split())

    print(solve(a, b, c))

결과

출처 & 깃허브

BOJ 2525
github

0개의 댓글