Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- a = [50, 100, 200, 500, 1000, 2000, 5000]
- s = int(input())
- inf = 10 ** 6
- prev = [-1] * (s + 1)
- f = [0] + [inf] * s
- for i in range(1, s + 1):
- for j in range(len(a)):
- if i - a[j] >= 0 and f[i - a[j]] < f[i]:
- f[i] = f[i - a[j]]
- prev[i] = a[j]
- f[i] += 1
- print(f[s])
- ans = []
- curr = s
- while curr > 0:
- ans.append(prev[curr])
- curr -= prev[curr]
- print(ans)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement