leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
0039.cpp (681B)
0 class Solution { 1 vector<vector<int>> res; 2 vector<int> crnt; 3 4 void rec(vector<int> &candidates, int target, int sum, int start = 0) { 5 if (sum == target) 6 res.push_back(crnt); 7 else if (sum < target) { 8 for (int i = start; i < candidates.size(); i++) { 9 crnt.push_back(candidates[i]); 10 rec(candidates, target, sum + candidates[i], i); 11 crnt.pop_back(); 12 } 13 } 14 } 15 16 public: 17 vector<vector<int>> combinationSum(vector<int> &candidates, int target) { 18 sort(candidates.begin(), candidates.end()); 19 rec(candidates, target, 0); 20 return res; 21 } 22 };