题目来源:
leetcode题目,网址:LCR 180. 文件组合 - 力扣(LeetCode)
解题思路:
暴力遍历所有可能组合即可。
解题代码:
- class Solution {
- public:
- vector<vector<int>> fileCombination(int target) {
- vector<vector<int>> res;
- for(int i=1;i<target;i++){
- vector<int> temp;
- int sum=i;
- temp.push_back(i);
- for(int j=i+1;j<target;j++){
- sum+=j;
- temp.push_back(j);
- if(sum==target){
- res.push_back(temp);
- break;
- }else if(sum>target){
- break;
- }
- }
- }
- return res;
- }
- };
总结:
好像可以利用等差数列求和公式优化。
官方题解给出了三种解法。第一种是暴力+枚举。第二种是枚举+数学优化,等差数列求和公式。第三种是双指针,和滑动窗口的思想类似。