[백준] 5585번 - 거스름돈

yerimstar·2021년 6월 23일
0

Greedy Algorithm

목록 보기
6/10

아이디어

1) 타로는 1000엔을 지불할 예정이고 입력받는 값은 지불할 돈이므로 우선, 타로가 거스름돈을 받아야 하는 값을 계산한다.
-> money = 1000엔 - 지불할 돈
2) 잔돈(500엔, 100엔, 50엔, 10엔, 5엔, 1엔)이 충분히 있다고 가정하였으므로 기본적인 거스름돈 문제 (그리디 알고리즘) 방법으로 문제를 해결하면 된다.
-> 잔돈이 큰 값부터 money값을 나눌 수 있는지 검사하여 그 횟수를 카운트한다.

최종 코드

money = 1000-int(input()) # 1000엔 - 지불할 돈
lst = [500,100,50,10,5,1]
cnt = 0 # 잔돈 개수

for l in lst:
    cnt += money // l
    money %= l

print(cnt)
profile
백엔드 개발자

0개의 댓글

관련 채용 정보