当前位置: 首页 > news >正文

Leetcode DAY 44: 完全背包 and 零钱兑换 II and 组合总和 Ⅳ

  • 完全背包

  • 518. 零钱兑换 II

·!!!程序未通过原因:

1、dp数组的初始化没考虑清楚

2、组合问题   dp数组的更新没考虑清楚

 修改后:

class Solution {
public:int change(int amount, vector<int>& coins) {// dp[j]表示装满容量为j的背包一共有多少种方法vector<int> dp(amount + 1, 0);int n = coins.size();dp[0] = 1;for(int i = 0; i < n; i++){for(int j = coins[i]; j <= amount; j++){//组合数问题dp[j] += dp[j - coins[i]];}}return dp[amount];}
};
  • 377. 组合总和 Ⅳ

注意!!!

如果求组合数就是外层for循环遍历物品,内层for遍历背包。

如果求排列数就是外层for遍历背包,内层for循环遍历物品。

先遍历物品的时候相当于是先把这个物品放进去了然后再看其他的能不能放进去,所以不会出现逆序,

先遍历背包相当于是用每个大小的背包看看把每一个物品都放进去一次再看别的物品能不能放进去,所以可以有逆序

程序未通过原因:

1、未考虑 j >= nums[i] 

2、C++测试用例有两个数相加超过int的数据,所以需要在if里加上dp[i] < INT_MAX - dp[i - num]

class Solution {
public:int combinationSum4(vector<int>& nums, int target) {//dp[j] 表示 装满背包为j的 排列数vector<int> dp(target + 1, 0);dp[0] = 1;// 先遍历背包 再遍历物品for(int j = 0; j <= target; j++){for(int i = 0; i < nums.size(); i++){if(j - nums[i] >= 0 && dp[j] < INT_MAX - dp[j - nums[i]]) {dp[j] += dp[j - nums[i]];}}}return dp[target];}
};

http://www.lryc.cn/news/19311.html

相关文章:

  • 谷歌搜索留痕的技术公式【2023年新版】
  • 2023财年Q4业绩继续下滑,ChatGPT能驱动英伟达重回巅峰吗?
  • 博客管理系统--项目说明
  • 一文带你了解MySQL的Server层和引擎层是如何交互的?
  • CVNLP 常用数据集语料库资源汇总
  • lisp 表达式求值规则
  • Sophos Firewall OS (SFOS) 19.5 MR1 - 同步下一代防火墙
  • 为什么很多人转行IT考虑后端开发Java?
  • WebDAV之π-Disk派盘+Cloud Player
  • Python-datetime、time包常用功能汇总
  • Spring MVC 源码- HandlerAdapter 组件(四)之 HandlerMethodReturnValueHandler
  • 2023面试必备:web自动化测试POM设计模式详解
  • 【人工智能 AI】Robotic Process Automation (RPA) 机器人流程自动化 (RPA)
  • ubuntu/linux系统知识(37)systemd管理临时文件的方法systemd-tmpfiles
  • 云计算专业和计算机专业哪个好就业?
  • electron sha512 checksum mismatch
  • 使用Chemistry Development Kit (CDK) 来进行化学SMILES子结构匹配
  • CMake模块的使用和自定义模块
  • jvm调优参数配置
  • Leetcode.1567 乘积为正数的最长子数组长度
  • 部分库与使用方法总结(自用)
  • C++实现日期类
  • 想成为一名专业黑客,但不知道从哪里学起?我来教你。
  • VMware ESXi 7.0 U3k Unlocker OEM BIOS 集成网卡驱动和 NVMe 驱动 (集成驱动版)
  • 新的计算方法:预测益生菌在不同生长条件下的相互作用
  • python自学之《21天学通Python》(13)——第16章 数据库编程
  • [架构之路-118]-《软考-系统架构设计师》-软架构设计-11-可靠性相关设计
  • 电阻串联的作用
  • leetcode 1675. Minimize Deviation in Array(最小化数组偏差)
  • 特征向量中心度(eigenvector centrality)算法原理与源码解析