Related Topics:BackTracking
和之前的没什么区别,重点还是找到返回出口条件
class Solution {
public:vector<vector<int>> combinationSum3(int k, int n) {
vector<int> temp;
vector<vector<int>> results;
int count=1;
combination(k,n,count,temp,results);
return results;
}
void combination(int k, int n,int count,vector<int>& temp,vector<vector<int>>& results){
if(k==0 && n==0){
results.push_back(temp);
return;
}
for(int i=count;i<=9;i++){
if(n<0) return;
temp.push_back(i);
combination(k-1,n-i,i+1,temp,results);
temp.pop_back();
}
}
};