안녕하세요. 백준 알고리즘을 처음부터 꾸준하게 작성하여 문제 풀이 진행해보려고 합니다 !
제가 사용하는 언어는 Python 입니다 !
문제
1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다.
- 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.
- 같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.
- 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×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개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오.
입력
첫째 줄에 3개의 눈이 빈칸을 사이에 두고 각각 주어진다.
출력
첫째 줄에 게임의 상금을 출력 한다.
문제풀이 1.
a, b, c = map(int, input().split())
if a == b == c:
print(10000 + a * 1000)
elif a == b or a == c:
print(1000 + a * 100)
elif b == c:
print(1000 + b * 100)
else:
print(max(a, b, c) * 100)
- input() : 문자열 입력
- .split() : 입력받은 문자열을 공백으로 나누어 리스트 형식으로 출력
- map(int, ...) : 리스트의 각 요소를 int형으로 변환
- if a == b == c : a, b, c가 모두 같다면 10000 + a * 1000 값 출력
- if a == b or a == c : a, b or a, c가 같다면 1000 + a * 100 값 출력
- if b == c : b, c가 같다면 1000 + b * 100 값 출력 (5번과 동일)
- else : 위의 조건들이 타지 않았다면 같은게 없으니 a, b, c 중 높은 값을 뽑아서 * 100 값 출력
문제풀이 2.
a, b, c = sorted(map(int, input().split()))
if a == b == c:
print(10000 + a * 1000)
elif a == b or b == c:
print(1000 + b * 100)
else:
print(c * 100)
- input() : 문자열 입력
- .split() : 입력받은 문자열을 공백으로 나누어 리스트 형식으로 출력
- map(int, ...) : 리스트의 각 요소를 int형으로 변환
- sorted() : 오름차순으로 정렬 젤 작다면 a, 중간 값 b, 젤 큰 값 c에 저장
- if a == b == c : a, b, c가 모두 같다면 10000 + a * 1000 값 출력
- if a == b or a == c : a, b or a, c가 같다면 1000 + a * 100 값 출력
- if b == c : b, c가 같다면 1000 + b * 100 값 출력 (5번과 동일)
- else : 위의 조건들이 타지 않았다면 같은게 없으니 a, b, c 중 높은 값을 뽑아서 * 100 값 출력
유의사항
- sorted, map, int, max 등 전부 파이썬 내장 기본 함수라서 언제든 불러서 사용 가능하므로 함수를 알면 쉽게 해결할 수 있는 문제
문제 내용 스크린샷
문제 소스 스크린샷
제출 스크린샷
감사합니다.
'알고리즘(백준)' 카테고리의 다른 글
[백준] 반복문 > 10950 : A+B - 3 (Python) (0) | 2025.09.26 |
---|---|
[백준] 반복문 > 2739 : 구구단 (Python) (3) | 2025.05.20 |
[백준] 조건문 > 2525 : 오븐 시계 (Python) (0) | 2025.05.18 |
[백준] 조건문 > 2884 : 알람 시계 (Python) (0) | 2025.05.18 |
[백준] 조건문 > 14681 : 사분면 고르기 (Python) (1) | 2025.05.15 |
댓글