본문 바로가기

백준/python

5585: 거스름돈(python)

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

 

5585번: 거스름돈

타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사

www.acmicpc.net

 

문제

 

타로는 자주 JOI잡화점에서 물건을 산다. JOI잡화점에는 잔돈으로 500엔, 100엔, 50엔, 10엔, 5엔, 1엔이 충분히 있고, 언제나 거스름돈 개수가 가장 적게 잔돈을 준다. 타로가 JOI잡화점에서 물건을 사고 카운터에서 1000엔 지폐를 한장 냈을 때, 받을 잔돈에 포함된 잔돈의 개수를 구하는 프로그램을 작성하시오.

 

풀이

입력받는 총 금액을 나누고 남은 금액을 다시 반복시키기 위한 장치와 원리를 이해하면 쉽게 풀 수 있는 문제다. 

 

코드

n = 1000 - int(input()) #계산할 거스름돈 변수 저장
coins = (500,100,50,10,5,1) # 거스름돈 분류 저장
count = 0 #거스름돈 동전 개수를 저장할 변수 초기값 지정
for coin in coins: #새로인 코인의 변수를 만들어 카운트 값에 저장하고 반복
    count += n//coin #입력된 돈을 coins 분류 안에 있는 걸로 나누어 그 만큼의 가운트를 추가
    n%=coin #만약 나눠지지 않았다면 다음으로 넘김
print(count) #최종 카운트, 동전 개수를 출력

'백준 > python' 카테고리의 다른 글

4344:평균은 넘겠지(python)  (0) 2023.09.14
2033:반올림(python)  (0) 2023.09.14
2755: 이번학기 평점은 몇 점?(python)  (0) 2023.09.13
3181: 줄임말 만들기(python)  (0) 2023.09.13
2592:대표값(python)  (0) 2023.09.13