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

server/2024/10/22 15:27:01/

文章目录

      • 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]

http://www.ppmy.cn/server/116126.html

相关文章

Rabbitmq中得RPC调用代码详解

文章目录 1.RPC客户端2.RabbitMQ连接信息实体类3.XML工具类 本文档只是为了留档方便以后工作运维,或者给同事分享文档内容比较简陋命令也不是特别全,不适合小白观看,如有不懂可以私信,上班期间都是在得 直接上代码了 1.RPC客户端 …

Java 日志

日志就是为了将程序的运行状况保存到文件中去。 命名的一个小细节: 比如把信息保存到文件中这个方法的名字可以写为infoToFile,有个人为了偷懒,写成info2File,发现效果还挺好,一下就能分清两个单词,所以后…

【网络安全】-rce漏洞-pikachu

rce漏洞包含命令执行漏洞与代码执行漏洞 文章目录 前言 什么是rce漏洞? 1.rce漏洞产生原因: 2.rce的分类: 命令执行漏洞: 命令拼接符: 常用函数: 代码执行漏洞: 常用函数: 分类&…

【开源免费】基于SpringBoot+Vue.JS在线视频教育平台(JAVA毕业设计)

本文项目编号 T 027 ,文末自助获取源码 \color{red}{T027,文末自助获取源码} T027,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析 六、核心代码6.1 新…

微软数据库的SQL注入漏洞解析——Microsoft Access、SQLServer与SQL注入防御

说明:本文仅是用于学习分析自己搭建的SQL漏洞内容和原理,请勿用在非法途径上,违者后果自负,与笔者无关;本文开始前请认真详细学习《‌中华人民共和国网络安全法》‌及其相关法规内容【学法时习之丨网络安全在身边一图了解网络安全法_中央网络安全和信息化委员会办公室】 。…

记忆化搜索【下】

375. 猜数字大小II 题目分析 题目链接:375. 猜数字大小 II - 力扣(LeetCode) 题目比较长,大致意思就是给一个数,比如说10,定的数字是7,让我们在[1, 10]这个区间猜。 如果猜大或猜小都会说明…

拱式桥安全结构健康监测解决方案

拱式桥作为一种常见的桥梁结构,其拱形设计不仅美观,还具有较高的承载能力。然而,随着使用年限的增加和环境因素的影响,拱式桥的结构健康和稳定需要持续监测和评估。自动化监测技术的应用,可以提升拱式桥的监测效率和准…

程易科技AI OS:赋能开发者,构建智慧未来

【引言】 随着人工智能技术的迅猛发展,越来越多的企业和个人投身于AI应用的研发之中。在这个过程中,一套高效、灵活且功能强大的开发平台显得尤为重要。程易科技推出的人工智能操作系统(AI OS),正是为了满足这一市场需…