C++ 代码
class Solution {
public:
vector<int>path;
vector<vector<int>> ans;
void dfs(int k,int start,int n )
{
if(!k&&!n)
{
ans.push_back(path);
return ;
}
for(int i=start;i<10;i++)
{
path.push_back(i);
dfs(k-1,i+1,n-i);
path.pop_back();
}
}
vector<vector<int>> combinationSum3(int k, int n) {
dfs(k,1,n);
return ans;
}
};