![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcE96Z5%2FbtsnOsOfUv9%2Ffm1UfYJ4bdlRZBxXvmdqWk%2Fimg.png)
[파이썬 알고리즘 문제풀이 입문] 완전탐색 (백트랙킹, 상태트리와 CUT EDGE) / DFS(깊이우선탐색) 기초 - 동전교환 (DFS)
·
💻 코딩테스트/파이썬 알고리즘 문제풀이
문제 다음과 같이 여러 단위의 동전들이 주어져 있을 때 거스름돈을 가장 적은 수의 동전으로 교환해주려면 어떻게 주면 되는가? 각 단위의 동전은 무한정 쓸 수 있다. 풀이 • 답안 : Python import sys input = sys.stdin.readline def DFS(L, sum): global res # CUT EDGE if L > res: return if sum > m: return if sum == m: if L < res: res = L else: for i in range(n): DFS(L+1, sum+a[i]) n = int(input()) a = list(map(int, input().split())) a.sort(reverse=True) m = int(input()) res = ..