leetcode 322 零錢兌換 python
題目描述:
給定不同面額的硬幣 coins 和乙個總金額 amount。編寫乙個函式來計算可以湊成總金額所需的最少的硬幣個數。如果沒有任何一種硬幣組合能組成總金額,返回-1
。
示例 1:
輸入:coins =示例 2:[1, 2, 5]
, amount =11
輸出:3
解釋:11 = 5 + 5 + 1
輸入:coins =說明:[2]
, amount =3
輸出:-1
你可以認為每種硬幣的數量是無限的。
思路如下:
**如下
class solution(object):
def coinchange(self, coins, amount):
""":type coins: list[int]
:type amount: int
:rtype: int
"""dp=[-1]*(amount+1)
dp[0]=0
for i in range(1,amount+1):
for j in range(0,len(coins)):
if i>=coins[j] and dp[i-coins[j]]!=-1:
if dp[i]==-1 or dp[i]>dp[i-coins[j]]+1:
dp[i]=dp[i-coins[j]]+1
return dp[amount]
leetcode322 零錢兌換
給定不同面額的硬幣 coins 和乙個總金額 amount。編寫乙個函式來計算可以湊成總金額所需的最少的硬幣個數。如果沒有任何一種硬幣組合能組成總金額,返回 1。示例 1 輸入 coins 1,2,5 amount 11輸出 3解釋 11 5 5 1 示例 2 輸入 coins 2 amount 3...
leetcode 322 零錢兌換
給定不同面額的硬幣 coins 和乙個總金額 amount。編寫乙個函式來計算可以湊成總金額所需的最少的硬幣個數。如果沒有任何一種硬幣組合能組成總金額,返回 1。示例 1 輸入 coins 1,2,5 amount 11 輸出 3 解釋 11 5 5 1示例 2 輸入 coins 2 amount ...
LeetCode 322 零錢兌換
322 零錢兌換 題目 給定不同面額的硬幣 coins 和乙個總金額 amount。編寫乙個函式來計算可以湊成總金額所需的最少的硬幣個數。如果沒有任何一種硬幣組合能組成總金額,返回 1。示例 1 輸入 coins 1,2,5 amount 11 輸出 3 解釋 11 5 5 1 示例 2 輸入 co...