저번 포스팅에서 그리디 알고리즘에 대해서 정리를 해봤습니다.
이번 포스팅에서는 기본적인 형태의 그리디 알고리즘 문제를 풀어봅니다.
백준 5585번 거스름돈(https://www.acmicpc.net/problem/5585)
그리디 알고리즘의 가장 기본적인 형태의 문제입니다.
1. 1000원에서 지불할 값(입력된 값) 을 빼서 거스름돈의 액수를 계산한다.
2. 500, 100, 50, 10, 5, 1엔의 잔돈 단위로 차례대로 몫과 나머지를 구해 최대로 거슬러준다.
코드
unit = [500, 100, 50, 10, 5, 1]
cost= int(input())
def coin(cost, unit):
answer = 0
cost = 1000 - cost
for i in unit:
answer += (cost // i)
cost = cost % i
print (answer)
coin(cost, unit)
반응형
'알고리즘 문제풀이' 카테고리의 다른 글
6. 백준 1138번: 한 줄로 서기 (0) | 2020.05.20 |
---|---|
5. 백준 2217번: 로프 문제풀이 (0) | 2020.05.20 |
4.백준 11399번: ATM 문제풀이 (0) | 2020.05.20 |
3. 백준 11047번 동전0 문제풀이 (0) | 2020.05.20 |
1.그리디(탐욕적) 알고리즘 (0) | 2020.05.20 |