mirror of
https://github.com/devenperez/leetcode.git
synced 2026-06-13 03:27:07 +00:00
Time: 810 ms (40.98%), Space: 18.7 MB (34.3%) - LeetHub
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
class Solution:
|
||||
def coinChange(self, coins: List[int], amount: int) -> int:
|
||||
"""
|
||||
Complexities:
|
||||
Time: O(mn)
|
||||
Space: O(m)
|
||||
|
||||
where n = len(coins), m = amount
|
||||
"""
|
||||
|
||||
dp = [-1] * (amount + 1)
|
||||
|
||||
dp[0] = 0
|
||||
for i in range(amount + 1):
|
||||
for coinValue in coins:
|
||||
if dp[i] == -1 or i + coinValue > amount:
|
||||
continue
|
||||
elif dp[i + coinValue] == -1:
|
||||
dp[i + coinValue] = dp[i] + 1
|
||||
else:
|
||||
dp[i + coinValue] = min(dp[i + coinValue], dp[i] + 1)
|
||||
|
||||
print(dp)
|
||||
return dp[amount]
|
||||
Reference in New Issue
Block a user