LeetCode Combination Sum II
来源:互联网 发布:知阅小说网vip账号 编辑:程序博客网 时间:2024/05/16 08:48
这个能不能不递归呢?
void recursiveSum2(vector<int> &candidates,int target,vector<int> &res,vector<vector<int> > &ret,int n){if (n==candidates.size()){return ;}if (candidates[n]==target){res.push_back(candidates[n]);ret.push_back(res);res.pop_back();}else{if (candidates[n]<target){res.push_back(candidates[n]);for(int i=n+1;i<candidates.size()&&candidates[i]<target;i++){recursiveSum2(candidates,target-candidates[n],res,ret,i);}res.pop_back();}elsereturn ;}}vector<vector<int> > combinationSum2(vector<int> &num, int target) {sort(num.begin(),num.end());vector<int> res;vector<vector<int> >ret;for (int i=0;i<num.size()&&num[i]<=target;i++){recursiveSum2(num,target,res,ret,i);}sort(ret.begin(),ret.end());ret.erase(unique(ret.begin(),ret.end()),ret.end());return ret;}
为什么后面要排序和去重复,思考给的例子,1 1 2 5 6 7 10 ,target=8,第一个1 和后面的2,5是一组,第二个1和后面的2,5 又是一组。
0 0
- LeetCode: Combination Sum II
- LeetCode: Combination Sum II
- [LeetCode]Combination Sum II
- LeetCode Combination Sum II
- [Leetcode] Combination Sum II
- [LeetCode] Combination Sum II
- LeetCode Combination Sum II
- [Leetcode] Combination Sum II
- LeetCode: Combination Sum II
- leetcode Combination Sum II
- [LeetCode]Combination Sum II
- [leetcode] Combination Sum II
- LeetCode-Combination Sum II
- LeetCode - Combination Sum II
- LeetCode:Combination Sum II
- 【Leetcode】Combination Sum II
- Combination Sum II 【leetcode】
- [LeetCode] Combination Sum II
- JS笔记
- webservice调用的好方法
- Redesign Your App for iOS 7 之 页面布局
- IT牛人博客
- Kali Linux渗透测试实战 1.3 渗透测试的一般化流程
- LeetCode Combination Sum II
- 使用Jquery实现顶部导航栏在页面滑动到自身所在位置之后固定在顶部的效果
- 十几岁的娃娃,下手咋这么狠
- [iPhone高级] 基于XMPP的IOS聊天客户端程序(IOS端一)
- 友盟渠道打包工具
- c# json 处理
- [Java] JDBC 04 TestProc.java (对存储过程进行调用 CallableStatement)
- [iPhone高级] 基于XMPP的IOS聊天客户端程序(IOS端二)
- fedora 20(gnome3桌面环境)安装后的个人简单配置