【代码随想录训练营】【Day 46】【动态规划-6】| Leetcode 518, 377

【代码随想录训练营】【Day 46】【动态规划-6】| Leetcode 518, 377

需强化知识点

  • 完全背包基础(遍历重量时 正序,保证物品可重复加入)
  • 完全背包:组合问题,先物品后重量,排列问题,先重量后物品

题目

518. 零钱兑换 II

python 复制代码
class Solution:
    def change(self, amount: int, coins: List[int]) -> int:
        # 金额 i 的 组成方式数量
        dp = [0] * (amount + 1)
        dp[0] = 1

        for coin in coins:
            for i in range(coin, amount + 1):
                dp[i] += dp[i-coin]
        
        return dp[amount]

377. 组合总和 Ⅳ

  • 完全背包:排列问题,先重量后物品
python 复制代码
class Solution:
    def combinationSum4(self, nums: List[int], target: int) -> int:
        # 总和为 i 的组合个数
        dp = [0] * (target+1)
        dp[0] = 1

        for i in range(1, target+1):
            for num in nums:
                if i >= num:
                    dp[i] += dp[i-num]
        
        return dp[target]
        
相关推荐
_日拱一卒13 分钟前
LeetCode:25K个一组翻转链表
算法·leetcode·链表
啊哦呃咦唔鱼17 分钟前
LeetCodehot100-394 字符串解码
算法
小欣加油18 分钟前
leetcode2078 两栋颜色不同且距离最远的房子
数据结构·c++·算法·leetcode·职场和发展
我真不是小鱼23 分钟前
cpp刷题打卡记录30——轮转数组 & 螺旋矩阵 & 搜索二维矩阵II
数据结构·c++·算法·leetcode
逻辑驱动的ken2 小时前
Java高频面试考点场景题09
java·开发语言·数据库·算法·oracle·哈希算法·散列表
帅小伙―苏2 小时前
力扣42接雨水
前端·算法·leetcode
AI科技星2 小时前
精细结构常数α的几何本源:从第一性原理的求导证明、量纲分析与全域验证
算法·机器学习·数学建模·数据挖掘·量子计算
6Hzlia3 小时前
【Hot 100 刷题计划】 LeetCode 287. 寻找重复数 | C++ 数组判环 (快慢指针终极解法)
c++·算法·leetcode
MegaDataFlowers3 小时前
26.删除有序数组中的重复项
算法
故事和你914 小时前
洛谷-数据结构1-4-图的基本应用2
开发语言·数据结构·算法·深度优先·动态规划·图论