题目描述:
输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。
序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。
方法:滑动窗口(双指针)
class Solution{ public int[][] findContinuousSequence(int target){ int i=1,j=2,s=3; List<int[]> res = new ArrayList<>(); while(i<j){ if(s==target){ int ans[] = new int[j-i+1]; for(int k=i;k<=j;k++){ ans[k-i]=k; } res.add(ans); } if(s>=target){ s-=i; i++; }else{ j++; s+=j; } } return res.toArray(new int[0][]); } }
标签:target,Offer,int,res,57,II,序列,new From: https://www.cnblogs.com/zhz123567/p/17439665.html