欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

57、输出和为S的连续正数序列

程序员文章站 2022-07-15 12:30:09
...
import java.util.ArrayList;
public class Solution {
    public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) {
        ArrayList<ArrayList<Integer>> result=new ArrayList<ArrayList<Integer>>();
        int small=1;
        int big=2;
        int mysum=0;
        while(small<(sum+1)/2)
        {
            mysum=(small+big)*(big-small+1)/2;
            if(small==big)
                continue;
            else if(mysum<sum)
                big++;
            else if(mysum>sum)
                small++;
            else if(mysum==sum)
            {
                ArrayList<Integer> s=new ArrayList<Integer>();
                for(int i=small;i<=big;i++)
                    s.add(i);
                result.add(s);
                big++;
                small++;
            }


        }
        return result;
    }
}