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()][]);
    }
}
目录
相关文章
|
5月前
leetcode-674:最长连续递增序列
leetcode-674:最长连续递增序列
38 0
|
5月前
|
机器学习/深度学习
【剑指offer】-和为S的连续正数序列-39/67
【剑指offer】-和为S的连续正数序列-39/67
剑指offer 64. 和为S的连续正数序列
剑指offer 64. 和为S的连续正数序列
61 0
|
存储
[递推]双幂序列、多幂序列、双幂积序列的和
[递推]双幂序列、多幂序列、双幂积序列的和
182 0
[递推]双幂序列、多幂序列、双幂积序列的和
|
算法
算法练习——(1)找数组中唯一成对的那个数(异或)
——如何找数组中唯一成对的那个数(数组特殊) 1-1000这一千个数放在含有1001个元素的数组中,只有唯一的一个元素值重复,其他均只出现一次。 每个数组元素只能访问一次,设计一个算法,将他找出来;不用辅助储存空间,设计一个算法实现.
104 0
|
测试技术
最长连续递增序列(LeetCode-674)
最长连续递增序列(LeetCode-674)
91 0
最长连续递增序列(LeetCode-674)
LeetCode 面试题57 - II. 和为s的连续正数序列 LCOF
LeetCode 面试题57 - II. 和为s的连续正数序列 LCOF
128. 最长连续序列
128. 最长连续序列
128. 最长连续序列
面试题57 - II. 和为s的连续正数序列
面试题57 - II. 和为s的连续正数序列
面试题57 - II. 和为s的连续正数序列