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

组合总和IV(力扣---动态规划)

文章目录

      • 1.题目描述
      • 2.解题思路
      • 3.代码实现

1.题目描述

题目描述见:组合总和IV
在这里插入图片描述

2.解题思路

视频参考: 组合总和IV

以上述的示例1为例:
dp[4]的含义是什么?和为4的组合有多少种
一般动态规划是可以由前面的dp[3]推导而来的
dp[3] 有 [ [1,1,1], [1, 2], [2,1], [3] ]这些方法
那么如果nums数组种含有元素1,则有 [ [1,1,1]+1, [1, 2]+1, [2,1]+1, [3]+1 ]
dp[4] = dp[3]
但是dp[4]不仅仅只有dp[3]得到的。也可能是dp[2],dp[1],dp[0]
我们再举一个例子dp[2] 有[[1,1],[2]]如果nums数组种有2那么就一定可以凑成dp[4]
因为[[1,1]+2,[2]+2]
所以可以归纳出dp[4]=dp[3]+dp[2]+dp[1]+dp[0]

dp[0]=1
dp[1] = 是否存在dp[0] + 1 存在dp[1] = 1
dp[2] = 是否存在dp[1]+1,dp[0]+2 都存在 ,则dp[2]=2

3.代码实现

dp = [0] * (target+1)
dp[0] = 1
for j in range(1, target+1):for i in range(len(nums)):if j-nums[i] >= 0: dp[j] += dp[j-nums[i]]return dp[-1]

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 多态(上)【C++】
  • 如何搞定日语翻译?试试这四款工具
  • FreeRTOS学习(2)延时函数的封装
  • 【白话树】之 树的基本知识、存储结构和二叉树转换
  • MySQL 子查询
  • hiresfix_latent 使用Upscale放大节点 对图片进行放大Comfyui
  • 众店绿色积分模式:引领消费新风尚,共筑商业新生态
  • 研1日记10
  • 深入探索系统架构设计
  • CCF编程能力等级认证GESP—C++7级—20240907
  • 利用Idea远程调试
  • Python 从入门到实战15(字符串其它操作)
  • Day14笔记-函数简介定义调用参数一
  • 【Java】基于JWT+Token实现完整登入功能(原理+实操图解)
  • 鸿蒙开发5.0【帧率】解析
  • 2019.2.20 c++ 知识梳理
  • Apache Zeppelin在Apache Trafodion上的可视化
  • canvas 高仿 Apple Watch 表盘
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • Js实现点击查看全文(类似今日头条、知乎日报效果)
  • Ruby 2.x 源代码分析:扩展 概述
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • V4L2视频输入框架概述
  • v-if和v-for连用出现的问题
  • Vue ES6 Jade Scss Webpack Gulp
  • 分布式任务队列Celery
  • 浮动相关
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 聊聊springcloud的EurekaClientAutoConfiguration
  • 思考 CSS 架构
  • 原生Ajax
  • 曾刷新两项世界纪录,腾讯优图人脸检测算法 DSFD 正式开源 ...
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • ‌‌雅诗兰黛、‌‌兰蔻等美妆大品牌的营销策略是什么?
  • #{} 和 ${}区别
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #QT(QCharts绘制曲线)
  • (a /b)*c的值
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)springboot 基于HTML5的个人网页的网站设计与实现 毕业设计 031623
  • (回溯) LeetCode 40. 组合总和II
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (欧拉)openEuler系统添加网卡文件配置流程、(欧拉)openEuler系统手动配置ipv6地址流程、(欧拉)openEuler系统网络管理说明
  • (强烈推荐)移动端音视频从零到上手(上)
  • (三)模仿学习-Action数据的模仿
  • (四)Controller接口控制器详解(三)
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (转)为C# Windows服务添加安装程序
  • (自用)网络编程
  • *算法训练(leetcode)第四十五天 | 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .net core 源码_ASP.NET Core之Identity源码学习
  • .Net OpenCVSharp生成灰度图和二值图