216. 组合总和 III
题目链接
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/combination-sum-iii/submissions/
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
题目分析
树深为9。
class Solution {
private:
vector<vector<int>> res;
vector<int> path;
void backtracking(int k, int n, int startIndex){
if(path.size() == k){
if(n == 0) res.push_back(path);
return;
}
for(int i = startIndex; i <= 9; i++){
path.push_back(i);
n -= i;
backtracking(k, n, i + 1);
n += i;
path.pop_back();
}
}
public:
//无序
vector<vector<int>> combinationSum3(int k, int n) {
backtracking(k, n, 1);
return res;
}
};
剪枝
对for循环的范围剪枝
对n剪枝,若i