leetcode39 组合总和
2024-09-05 08:27:13
这道题想到的就是dfs,在累加的和大于或等于target时到达递归树的终点。
代码如下:
class Solution {
public:
vector<vector<int>> combinationSum(vector<int>& candidates, int target) {
int r=candidates.size()-1;
vector<vector<int>> res;
for(int i=r;i>=0;i--){
vector<int> tmp;
int sum=0;
dfs(candidates, tmp, res, target, i, sum);
}
return res;
}
void dfs(vector<int>& candidates, vector<int>& tmp, vector<vector<int>>& res, int target,int id,int& sum){
sum+=candidates[id];
tmp.push_back(candidates[id]);
if(sum>=target){
if(sum==target) res.push_back(tmp);
sum-=candidates[id];
tmp.pop_back();
return;
}
for(int i=id;i>=0;i--){
dfs(candidates,tmp,res,target,i,sum);
}
tmp.pop_back();
sum-=candidates[id];
}
};
最新文章
- jsp页面向后台传值出现乱码的问题
- IOS第九天(1:QQ聊天界面frame模型)
- jQuery实现图片伦播效果(淡入淡出+左右切换)
- cordova插件iOS平台实战开发注意点
- 【转】java多态详解
- 2.x ESL第二章习题 2.8
- PHP学习笔记二
- iOS中怎样加入自己定义的字体
- Web Builder
- CSS div阴影效果
- UVA 5009 Error Curves
- SQL Server 数据库部分常用语句小结(三)
- [Swift]LeetCode749. 隔离病毒 | Contain Virus
- SQLiteOpenHelper+ContentProvider的使用
- JavaScript中变量、执行环境、作用域与C#中的异同
- 为AI提供数据:构建2017数据创新的总结
- [P3957][NOIP2017]跳房子 (DP+二分/队列?)
- Kubernetes部署SpringCloud(一) Eureka 集群,解决unavailable-replicas,available-replicas条件
- PS与PL协同设计
- python+selenium2(一)