#### [剑指 Offer 57 - II. 和为s的连续正数序列](https://leetcode-cn.com/problems/he-wei-sde-lian-xu-zheng-shu-xu-lie-lcof/)

难度简单

输入一个正整数 `target` ，输出所有和为 `target` 的连续正整数序列（至少含有两个数）。

序列内的数字由小到大排列，不同序列按照首个数字从小到大排列。

 

**示例 1：**

```
输入：target = 9
输出：[[2,3,4],[4,5]]
```

**示例 2：**

```
输入：target = 15
输出：[[1,2,3,4,5],[4,5,6],[7,8]]
```

 

**限制：**

- `1 <= target <= 10^5`

#### 解法

```java
//滑动窗口
class Solution {
    public int[][] findContinuousSequence(int target) {
        List<int[]> ret = new ArrayList<>();
        int i = 1;
        int j = 2;
        int sum = 3;
        while (i < j) {
            if (sum == target) {
                int[] tmp = new int[j - i + 1];
                for (int k = i; k <= j; k++) {
                    tmp[k - i] = k; 
                }
                ret.add(tmp);
            }
            if (sum >= target) {
                sum -= i++;
            } else { 
                sum += ++j;                
            }
        }
        return ret.toArray(new int[0][]);
    }
}
```

