700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > -08-28剑指 Offer 57 - II. 和为s的连续正数序列

-08-28剑指 Offer 57 - II. 和为s的连续正数序列

时间:2019-05-09 03:36:34

相关推荐

-08-28剑指 Offer 57 - II. 和为s的连续正数序列

双指针

1)终止条件target = = sum;

2)target > sum 的时候,left++;

3)target < sum 的时候,right++;

5)sum = (【right + left】【right - left + 1】)/ 2

等差数列求和

class Solution {public:vector<vector<int>> findContinuousSequence(int target) {vector<vector<int>> ret;vector<int> helper;int left = 1,right = 2;while(left < right){int sum = (right + left)*(right - left + 1) / 2;if(sum == target){helper.clear();for(int i = left;i <= right;i++){helper.push_back(i);}ret.push_back(helper);left++;}else if(sum < target){right++;}else left++;}return ret;}};

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。