您的位置:首页 > 编程语言 > C语言/C++

[leetcode] Combination Sum III

2015-06-03 15:49 218 查看
简单题,和前面两个类似。代码如下:

class Solution {
public:
vector<vector<int>> combinationSum3(int k, int n) {
vector<vector<int> > result;
vector<int> num;
dfs(k, n, result, num, 1);
return result;
}
private:
void dfs(int k, int n, vector<vector<int> > &result, vector<int> &num, int cur){
if(n == 0 && k == 0){
result.push_back(num);
return;
}
if(k == 0 || cur > 9 || n < cur)
return;
num.push_back(cur);
dfs(k - 1, n - cur, result, num, cur + 1);
num.pop_back();
dfs(k, n, result, num, cur + 1);
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 leetcode c++