目录
学习目标
学习内容
70. 爬楼梯 (进阶)
322. 零钱兑换
279.完全平方数
学习目标
- 70. 爬楼梯 (进阶)
- 322. 零钱兑换
- 279.完全平方数
学习内容
70. 爬楼梯 (进阶)
problems/0070.爬楼梯完全背包版本.md · programmercarl/leetcode-master(代码随想录出品) - Gitee.comhttps://gitee.com/programmercarl/leetcode-master/blob/master/problems/0070.%E7%88%AC%E6%A5%BC%E6%A2%AF%E5%AE%8C%E5%85%A8%E8%83%8C%E5%8C%85%E7%89%88%E6%9C%AC.md#70-%E7%88%AC%E6%A5%BC%E6%A2%AF
322. 零钱兑换
322. 零钱兑换 - 力扣(LeetCode)https://leetcode.cn/problems/coin-change/
import math
class Solution:
def coinChange(self, coins: List[int], amount: int) -> int:
n = len(coins)
dp = [math.inf]*(amount+1)
dp[0]=0
for i in range(n):
for j in range(coins[i],amount+1):
dp[j] = min(dp[j],dp[j-coins[i]]+1)
return -1 if dp[-1]==math.inf else dp[-1]
279.完全平方数
279. 完全平方数 - 力扣(LeetCode)https://leetcode.cn/problems/perfect-squares/
import math
class Solution:
def numSquares(self, n: int) -> int:
dp = [math.inf]*(n+1)
dp[0] = 0
i = 1
while i*i<=n:
for j in range(i*i,n+1):
dp[j] = min(dp[j],dp[j-i*i]+1)
i+=1
return dp[-1]