滑动窗口(Java版本)

和为S的连续正数序列

http://www.nowcoder.com/questionTerminal/c451a3fd84b64cb19485dad758a55ebe

    public ArrayList<ArrayList<Integer> > FindContinuousSequence(int sum) {
        ArrayList<ArrayList<Integer>> res = new ArrayList<>();
        int left = 1,right = 1;
        int temp = 0;
        while(left <= sum/2){
            if(temp < sum){
                temp += right;
                right++;
            }else if(temp > sum){
                temp -=left;
                left++;
            }else{
                ArrayList<Integer> ans = new ArrayList<>();
                for(int k = left;k<right;k++){
                    ans.add(k);
                }
                res.add(ans);
                temp -= left;
                left++;
            }
        }
        return res;
    }
全部评论

相关推荐

后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-28 13:48
hory权:校招vip纯神人了,还说自己是什么师范大学的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务