57_和为s的连续正数序列

简介: 57_和为s的连续正数序列

57_和为s的连续正数序列

 

package 数组;
/**
 * 题意:暗示了数据是升序的
 * https://leetcode-cn.com/problems/he-wei-sde-lian-xu-zheng-shu-xu-lie-lcof/
 */
import java.util.ArrayList;
import java.util.List;
public class _57_和为s的连续正数序列 {
    public int[][] findContinuousSequence(int target) {
        List<int[]> vec = new ArrayList<int[]>();
        int left = 1, right = 2;
        while(left < right) {
            //求和公式
            int sum = (left + right) * (right - left + 1) / 2;
            if (sum == target) {
                int[] res = new int[right - left + 1];
                for (int i = left; i <= right; ++i) {
                    res[i - left] = i;
                }
                vec.add(res);
                left++;    //找到之后,左边指针往前挪动,(微调)
            } else if (sum < target) {
                right++;
            } else {
                left++;
            }
        }
        return vec.toArray(new int[vec.size()][]);
    }
}
目录
相关文章
|
2月前
|
算法
674.最长连续递增序列、5. 最长回文子串(2021-11-05)
674.最长连续递增序列、5. 最长回文子串(2021-11-05)
23 0
|
7月前
|
机器学习/深度学习
【剑指offer】-和为S的连续正数序列-39/67
【剑指offer】-和为S的连续正数序列-39/67
剑指offer 64. 和为S的连续正数序列
剑指offer 64. 和为S的连续正数序列
69 0
leetcode 674 最长连续递增序列
leetcode 674 最长连续递增序列
92 0
leetcode 674 最长连续递增序列
|
存储
[递推]双幂序列、多幂序列、双幂积序列的和
[递推]双幂序列、多幂序列、双幂积序列的和
217 0
[递推]双幂序列、多幂序列、双幂积序列的和
128. 最长连续序列
128. 最长连续序列
128. 最长连续序列
滑动窗口__最长不含重复字符的子符串_和为S的连续正整数序列(剑指offer)
滑动窗口__最长不含重复字符的子符串_和为S的连续正整数序列(剑指offer)
112 0
滑动窗口__最长不含重复字符的子符串_和为S的连续正整数序列(剑指offer)
面试题57 - II. 和为s的连续正数序列
面试题57 - II. 和为s的连续正数序列
面试题57 - II. 和为s的连续正数序列
|
算法
【leetcode】57 - II. 和为s的连续正数序列
1.输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。 序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。
139 0
【leetcode】57 - II. 和为s的连续正数序列