Leetcode 216 Combination Sum III
2018-02-28 19:14
411 查看
1. 问题描写叙述
找出全部k个数字的组合,使它们的和为n。设全部的数都为1~9,且没有反复数。结果要保持升序。
2. 方法与思路
採用回溯法能够非常好地解决问题。class Solution { public: int target,kk; vector<vector<int> > v; public: void traceback(int start, int cnt, int sum, vector<int> nums) { if(cnt > kk || sum > target) { return; } else if(cnt == kk && sum == target) { v.push_back(nums); //符合条件,插入结果集 return; } for(int i = start+1; i < 10; i++) { nums.push_back(i); traceback(i,cnt+1,sum+i,nums); nums.pop_back(); //还原初始状态 } } vector<vector<int> > combinationSum3(int k, int n) { target = n; kk = k; vector<int> nums; traceback(0,0,0,nums); return v; } };
相关文章推荐
- LeetCode 216 Combination Sum III
- LeetCode 216 Combination Sum III
- [Leetcode 216, Medium] Combination sum III
- LeetCode 216 Combination Sum III(Backtracking)(*)
- leetcode_c++:Combination Sum III(216)
- 【LEETCODE】216-Combination Sum III [Python]
- leetcode216-Combination Sum III
- [LeetCode-Algorithms-216] "Combination Sum III" (2018.1.1-WEEK18)
- LeetCode[216] Combination Sum III
- leetcode-39&40&216 Combination Sum I&II&III
- 【LeetCode-面试算法经典-Java实现】【216-Combination Sum III (组合数的和)】
- 216 Combination Sum III [Leetcode]
- Leetcode 39 Combination Sum & 40 Combination Sum II & 216 Combination Sum III & 377 Combination V
- Leetcode 216 Combination Sum III
- LeetCode216:Combination Sum III
- Java for LeetCode 216 Combination Sum III
- LeetCode #216: Combination Sum III
- Leetcode 216 Combination Sum III 组合求和
- leetcode 216: Combination Sum III
- LeetCode(216) Combination Sum III