1 초 | 256 MB | 17617 | 10524 | 9585 | 60.260% |
문제
동수는 제과점에 과자를 사러 가는데 현재 가진 돈이 모자랄 경우 부모님께 모자란 돈을 받으려고 한다. 과자 한 개의 가격이 K, 사려고 하는 과자의 개수가 N이고, 현재 가진 돈의 액수를 M이라 할 때 여러분은 동수가 부모님께 받아야 하는 모자란 돈을 계산하려고 한다.
예를 들어, 과자 한 개의 가격이 30원, 사려고 하는 과자의 개수가 4개, 현재 동수가 가진 돈이 100원이라 할 때, 동수가 부모님께 받아야 하는 돈은 20원이다. 과자 한 개의 가격이 250원, 사려고 하는 과자의 개수가 2개, 현재 동수가 가진 돈이 140원이라 할 때, 동수가 부모님께 받아야 하는 돈은 360원이다. 과자 한 개의 가격이 20원, 사려고 하는 과자의 개수가 6개, 현재 동수가 가진 돈이 120원이라 할 때 동수가 부모님께 받아야 하는 돈은 0원이다. 과자 한 개의 가격이 20원, 사려고 하는 과자의 개수가 10개, 현재 동수가 가진 돈이 320원이라 할 때 동수가 부모님께 받아야 하는 돈은 역시 0원이다.
과자 한 개의 가격, 사려고 하는 과자의 개수와 동수가 현재 가진 돈의 액수가 주어질 때 동수가 부모님께 받아야 하는 돈의 액수를 출력하는 프로그램을 작성하시오.
입력
첫 번째 줄에는 과자 한 개의 가격 K, 사려고 하는 과자의 개수 N, 현재 동수가 가진 돈 M이 각각 공백을 사이에 두고 주어진다. 단, K, N은 1,000 이하의 양의 정수이고, M은 10만 이하의 양의 정수이다. (1 ≤ K, N ≤ 1,000, 1 ≤ M ≤ 100,000이다.)
출력
첫 줄에 동수가 부모님께 받아야 하는 돈의 액수를 출력한다.
예제 입력 1 복사
300 4 1000
예제 출력 1 복사
200
예제 입력 2 복사
250 2 140
예제 출력 2 복사
360
예제 입력 3 복사
20 6 120
예제 출력 3 복사
0
예제 입력 4 복사
20 10 320
예제 출력 4 복사
0
from collections import Counter
# 1차 입력값 처리
def chkInput(testCase=None):
# 케이스 반복 횟수 체크
caseLength = len(testCase)
# 입력값이 3개가 아닐 때
if caseLength != 3:
raise Exception('입력값이 3개가 아닙니다.')
# 과자 한개 가격 범위 체크
if not (1 <= testCase[0] <= 1000):
raise Exception('입력값의 범위가 잘못되었습니다.')
# 사려고 하는 과자 개수 범위 체크
if not (1 <= testCase[1] <= 1000):
raise Exception('입력값의 범위가 잘못되었습니다.')
# 현재 동수가 가진 돈 범위 체크
if not (1 <= testCase[2] <= 100000):
raise Exception('입력값의 범위가 잘못되었습니다.')
# 결과값 계산
def calOutput(testCase=None):
funcResult = 0
snackPrice = testCase[0] # 과자 한개 가격
wtbSnackCnt = testCase[1] # 사려고 하는 과자 개수
money = testCase[2] # 현재 동수가 가진 돈
# 가진 돈이 적을 때
if snackPrice * wtbSnackCnt > money:
# 절대값
funcResult = abs(money - snackPrice * wtbSnackCnt)
else:
# 가진 돈이 같거나 많을 때
funcResult = 0
return funcResult
try:
caseInputList = list(map(int, input().split()))
chkInput(caseInputList)
print(calOutput(caseInputList))
except Exception as e:
print(e)
'IT > Programming' 카테고리의 다른 글
[백준, Python] 3009번 네 번째 점 (0) | 2022.08.17 |
---|---|
[백준, Python] 4101번 크냐? (0) | 2022.07.22 |
[백준, Python] 1934번 최소공배수 (0) | 2022.07.22 |
[백준, Python] 2480번 주사위 세개 (0) | 2022.07.22 |
[백준, Python] 10039번 평균 점수 (0) | 2022.07.11 |