The Greedy Approach
🤗 최소 동전 개수 문제
def coin_count(value):
coni_types = [500, 100, 50, 10] (정렬된 리스트)
coin_count = 0
for coin in coin_types:
count += value // coin # 몫 ->> 거슬러 줄 수 있는 동전 개수
value =value % coin # 나머지 ->> 거슬러 주고 남은 금액
return coin_count
print(coin_count(1000))
코드를 보면 화폐의 종류만큼 반복을 수행해야 한다. 따라서 화폐의 종류가 k개라고 할 때 위 소스 코드의 시간 복잡도는 O(K)이다. 즉, 이 알고리즘의 시간 복잡도는 동전의 총 종류에만 영향을 받고, 거슬러 줘야 하는 금액의 크기와는 무관하다는 것을 알 수 있다.