根据题意可判断属于完全背包队列问题

步骤一、确定状态:

确定dp数组及下标含义

dp数组的大小是target+1, 那么这时候背包的容量才能取到target, dp[j]表示的是装满容量为[j]的背包有多少种方法

步骤二、推断状态方程:

这个和上面的零钱兑换II的一样 dp[j] += dp[j-nums[i]]

步骤三、规定初始条件:

初始条件:

全局初始化为0, 而dp[0] = 1

步骤四、计算顺序:

对于物品, 依然是正向遍历,而对于背包,也是正向遍历,因为这里的物品 可以取多次

class Solution:def combinationSum4(self, nums: List[int], target: int) -> int:if len(nums) == 0 or target == 0:return 0# dp[i]: 容量为i的背包有多少种装法        dp = [0 for _ in range(target+1)]dp[0] = 1 # 初始化for j in range(target + 1): # 遍历背包容量for i in range(len(nums)): # 遍历物品if j >= nums[i]:dp[j] += dp[j - nums[i]]return dp[-1]

100. Leetcode 377. 组合总和 Ⅳ (动态规划-完全背包)相关推荐

  1. leetcode.377. 组合总和 Ⅳ---dp问题

    377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 ...

  2. Java实现 LeetCode 377 组合总和 Ⅳ

    377. 组合总和 Ⅳ 给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数. 示例: nums = [1, 2, 3] target = 4 所有可能的组合为: (1, 1 ...

  3. [Leetcode] 377. 组合总和 Ⅳ

    给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 位整数范围. 示例 1 ...

  4. Leetcode每日一题——377.组合总和Ⅳ。完全背包推导。dp数组

    题目链接: 力扣 题目描述: 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 ...

  5. leetcode 377 组合总和IV

    题目 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 位整数范围. 示 ...

  6. leetcode 377. 组合总和 Ⅳ(dp)

    给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素组合的个数. 题目数据保证答案符合 32 位整数范围. 示例 1 ...

  7. 代码随想录44——动态规划:完全背包理论基础、518零钱兑换II、377组合总和IV

    文章目录 1.完全背包理论基础 2.518零钱兑换II 2.1.题目 2.2.解答 3.377组合总和IV 3.1.题目 3.2.解答 4.组合和排列问题的便利顺序 4.1.组合问题 4.2.排列问题 ...

  8. 【力扣-动态规划入门】【第 21 天】377. 组合总和 Ⅳ

    标题:377. 组合总和 Ⅳ 难度:中等 天数:第21天,第1/3题 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target ...

  9. 【Leetcode】完全背包问题-377. 组合总和 Ⅳ

    [Leetcode]完全背包问题-377. 组合总和 Ⅳ 题目 给你一个由 不同 整数组成的数组 nums ,和一个目标整数 target .请你从 nums 中找出并返回总和为 target 的元素 ...

最新文章

  1. 【实用】一个移动端简单的UI弹窗组件,虽算不上高大上,但至少耐看
  2. oracle 状态unknown,Oracle RAC 一个节点的instance资源状态为unknown
  3. [原创] JS 继承详解。欢迎拍砖
  4. boost::ratio_equal相关的测试程序
  5. NeurIPS2021 MBT:多模态数据怎么融合?谷歌提出基于注意力瓶颈的方法,简单高效还省计算量...
  6. bex64 java 贴吧,Windows Web Server 2008 R2 x64上的BEX错误
  7. SqlServer2008 数据库同步的两种方式(Sql JOB)
  8. latex中输入matlab代码,Latex插入matlab代码
  9. 最全国内外文献检索网站收集
  10. Installing VMware Tools, please wait解决办法
  11. Excel 添加图片批注
  12. php抓取快照,PHP抓屏函数实现屏幕快照代码分享
  13. Day04_Manuals for Python@lisongye - list列表
  14. 蒋凡出海,阿里的必答题是全球化
  15. css 图片居中_你需掌握的CSS知识都在这了(长文建议收藏,文末有福利)
  16. 【QT】——07_Lambda表达式(笔记)
  17. Linux性能优化实战:CPU的上下文切换是什么意思(04)
  18. 基于YOLOv5的中式快餐店菜品识别系统
  19. 综合素质——作文——规则意识、人品教育、自信、用于探索、开拓前行;
  20. 用不规则矢量多边形裁切栅格数据的方法比较

热门文章

  1. HTTP面试题都在这里
  2. 每日文献:2018-01-11
  3. Hibernate用Mysql数据库时链接关闭异常的解决
  4. (Builder)建造者模式的Java实现
  5. SCCM2012SP1---配置客户端发现方法和边界组
  6. 文件寄生——寄生虫自体繁衍的道路
  7. Mybatis解决字段名与实体类属性名不相同的冲突
  8. Oracle For 循环添加数据
  9. bash之流程控制for循环及bash命令退出和退出状态码
  10. 通用工具之Pair和Tuple-《C++标准库(第二版)》读书笔记