알고리즘/그리디

거스름 돈

뚜드림 2020. 8. 11. 21:54

예제 3 - 1 거스름돈


당신은 음식점의 계산을 도와주는 점원이다.
카운터에는 거스름돈으로 사용할 500, 100, 50, 10원 짜리 동전이 무한히 존재한다고 가정한다.
손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러 줘야 할 동전의 최소 개수를 구해라.
단 거슬러 줘야 할 돈 N은 항상 10의 배수이다.

 

TIP

먼저 큰 수 부터 차례로 걸어야 하므로

 

list에 동전들을 오름차순으로 역정렬 시키고

리스트에서 앞쪽 코인(큰 코인) 부터 낸 돈을 나눠서 점점 작아지게 한다.

코인의 갯수를 카운트하고 프린트 한다.