20 lines
439 B
Python
20 lines
439 B
Python
amount = 5
|
|
coins = [1,2,5]
|
|
|
|
def change(amount, coins):
|
|
|
|
|
|
dp = [[1]+[0]*amount for _ in range(len(coins)+1)]
|
|
for i in range(1, len(coins)+1):
|
|
for j in range(1, amount+1):
|
|
if coins[i-1] <= j:
|
|
dp[i][j] = dp[i-1][j] + dp[i][j-coins[i-1]]
|
|
else:
|
|
dp[i][j] = dp[i-1][j]
|
|
|
|
print(dp)
|
|
|
|
return dp[len(coins)][amount] # or dp[-1][-1]
|
|
|
|
|
|
print( change( amount, coins ) ) |