当前位置:网站首页>LeetCode_377_组合总和Ⅳ
LeetCode_377_组合总和Ⅳ
2022-08-02 12:23:00 【Fitz1318】
题目链接
题目描述
给你一个由 不同 整数组成的数组 nums
,和一个目标整数 target
。请你从 nums
中找出并返回总和为 target
的元素组合的个数。
题目数据保证答案符合 32
位整数范围。
示例 1:
输入:nums = [1,2,3], target = 4
输出:7
解释:
所有可能的组合为:
(1, 1, 1, 1)
(1, 1, 2)
(1, 2, 1)
(1, 3)
(2, 1, 1)
(2, 2)
(3, 1)
请注意,顺序不同的序列被视作不同的组合。
示例 2:
输入:nums = [9], target = 3
输出:0
提示:
1 <= nums.length <= 200
1 <= nums[i] <= 1000
nums
中的所有元素 互不相同1 <= target <= 1000
进阶:如果给定的数组中含有负数会发生什么?问题会产生何种变化?如果允许负数出现,需要向题目中添加哪些限制条件?
解题思路
动态规划五部曲
确定
dp
数组及其下标含义dp[i]
:凑成正整数i
的排列个数
确定递推公式
dp[i] += dp[i- nums[j]]
dp
数组初始化dp[0] = 1
- 其他初始化为0即可,因为后面都会被覆盖掉
确定遍历顺序
- 个数可以无限使用,说明这是一个完全背包问题
- 得到的集合是排列,那么就用外层for循环遍历背包,内层for循环遍历物品
举例推到
dp
数组
AC代码
class Solution {
public int combinationSum4(int[] nums, int target) {
int[] dp = new int[target + 1];
dp[0] = 1;
for (int i = 0; i <= target; i++) {
for (int j = 0; j < nums.length; j++) {
if (i >= nums[j]) {
dp[i] += dp[i - nums[j]];
}
}
}
return dp[target];
}
}
边栏推荐
- 数据湖(三):Hudi概念术语
- Free Chinese-English Translation Software - Automatic Batch Chinese-English Translation Software Recommended Daquan
- Process finished with exit code 1
- Hand rolled architecture, 41 Redis interview asked
- 解决anaconda下载pytorch速度极慢的方法
- kvm部署
- ABAP-OOAVL模板程序
- 阿苹的思考
- 如何搭建威纶通触摸屏与S7-200smart之间无线PPI通信?
- ABAP-OOAVL template program
猜你喜欢
Likou 209 - String with the Minimum Length - Sliding Window Method
Process finished with exit code 1
力扣35-搜索插入位置——二分查找
分布式限流利器,手撕&redisson实现
用位运算为你的程序加速
太厉害了,终于有人能把TCP/IP 协议讲的明明白白了
Free Chinese-English Translation Software - Automatic Batch Chinese-English Translation Software Recommended Daquan
看我如何用多线程,帮助运营小姐姐解决数据校对系统变慢!
JVM学习----垃圾回收调优
Leek 151 - Reverse words in a string
随机推荐
pig4cloud服务架构使用
前男友买辣椒水威胁要抢女儿,女方能否申请人身安全保护令?
Golang map数组按字段分类
MyCat2的介绍与安装以及基本使用
QListView的使用
WebUI自动化测试框架搭建从0到1(完整源码)更新完毕
Lexicon 27 - Remove Elements - Simple Questions
php——三篇夯实根基第一篇
Failure Analysis | A SELECT statement crashes MySQL, what happened?
免费的中英文翻译软件-自动批量中英文翻译软件推荐大全
How to connect TDengine through DBeaver?
redis cluster cluster, the ultimate solution?
The 7 most commonly used data analysis thinking, solve 95% of the analysis problems
SQL function $TRANSLATE
手撸架构,Redis面试41问
darknet训练yolov4模型
【项目管理技术的优势】
np.nan, np.isnan, None, pd.isnull, pd.isna finishing and summary
Distributed current limiting, hand & redisson implementation
MD5 detailed explanation (check file integrity)