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

代码随想录算法训练营Day44 ||leetCode 完全背包 || 518. 零钱兑换 II || 377. 组合总和 Ⅳ

完全背包

518. 零钱兑换 II 

遍历硬币和金额,累加所有可能

class Solution {
public:int change(int amount, vector<int>& coins) {vector<int> dp(amount+1,0);dp[0]=1;for (int i = 0; i < coins.size();i++){for(int j = coins[i]; j <= amount;j++){dp[j] += dp[j-coins[i]];}}return dp[amount];}
};

377. 组合总和 Ⅳ

此处涉及到排列情况,需要先遍历大小,再遍历容量

class Solution {
public:int combinationSum4(vector<int>& nums, int target) {vector<int> dp(target + 1, 0);dp[0] = 1;for (int i = 0; i <= target; i++) { // 遍历背包for (int j = 0; j < nums.size(); j++) { // 遍历物品if (i - nums[j] >= 0 && dp[i] < INT_MAX - dp[i - nums[j]]) {dp[i] += dp[i - nums[j]];}}}return dp[target];}
};

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

相关文章:

  • RabbitMQ发布确认高级版
  • 【阿里云系列】-基于云效构建部署Springboot项目到ACK
  • PyTorch搭建LeNet训练集详细实现
  • R语言复现:中国Charls数据库一篇现况调查论文的缺失数据填补方法
  • 解决Git:Author identity unknown Please tell me who you are.
  • Flink StreamTask启动和执行源码分析
  • 【MySQL 系列】MySQL 语句篇_DCL 语句
  • 什么是序列化?为什么需要序列化?
  • Linux本地搭建FastDFS系统
  • docker和docker-compose安装
  • 深入理解Spring的ApplicationContext:案例详解与应用
  • 6.Java并发编程—深入剖析Java Executors:探索创建线程的5种神奇方式
  • 英语阅读挑战
  • 备战蓝桥之思维
  • 09 string的实现
  • Git 进行版本控制时,配置 user.name 和 user.email
  • 传统开发读写优化与HBase
  • 【OpenGL实现 03】纹理贴图原理和实现
  • FDU 2021 | 二叉树关键节点的个数
  • 精读《React Conf 2019 - Day2》
  • 向ChatGPT高效提问模板
  • android metaRTC编译
  • HDFS面试重点
  • Java中的IO流是什么?
  • Spring boot 集成netty实现websocket通信
  • 数码管的动态显示(二)
  • 【JavaScript】数据类型转换 ① ( 隐式转换 和 显式转换 | 常用的 数据类型转换 | 转为 字符串类型 方法 )
  • git学习(创建项目提交代码)
  • Day36:安全开发-JavaEE应用第三方组件Log4j日志FastJson序列化JNDI注入
  • HTML5+CSS3+JS小实例:全屏范围滑块