专栏首页AI那点小事剑指offer——和为S的连续正数序列

剑指offer——和为S的连续正数序列

概述

题目描述 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。没多久,他就得到另一组连续正数和为100的序列:18,19,20,21,22。现在把问题交给你,你能不能也很快的找出所有和为S的连续正数序列? Good Luck! 输出描述: 输出所有和为S的连续正数序列。序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序


C++ AC代码

#include <iostream>
#include <vector>
using namespace std;

class Solution {
    public:
        vector<vector<int> > FindContinuousSequence(int sum) {
            vector<vector<int> > ans;
            int left = 1,right = 1 , sumx= 1;
            while(left <= right){
                right++;
                sumx += right;
                while(sumx > sum){
                    sumx -= left;
                    left++;
                }
                if(sumx == sum && left != right){
                    vector<int> data;
                    for(int i = left ; i <= right ; i++){
                        data.push_back(i);
                    }
                    ans.push_back(data);
                } 
            }
            return ans;
        }
};

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 2010年计算机联考真题——一维数组循环左移

    从七月份决定开始考研,中间由于听报告,回家复习数学和政治而耽误了一些时间。自己准备报考山东大学计算机技术的专硕,幸好是数学是考数学二,专业课也只有一门数据结构,...

    AI那点小事
  • 剑指offer——数字在排序数组中出现的次数

    由于是有序数组,那么查找采取二分法。找到k在数组中的位置,在向前和向后遍历是否有重复的。

    AI那点小事
  • 1025. 反转链表 (25)

    给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转。例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4;如果K为4,则...

    AI那点小事
  • 死锁(Deadlock)简析

    比如A进程占有资源R1,需要资源R2,而B进程占有资源R2并需要资源R1,A、B进程互相等待对方完成任务并释放资源,形成了死锁。

    gojam
  • 营销知识丨企业新媒体营销框架概览

    跟上述概念不谋而合,近几年各种新媒体平台如雨后春笋扑面而来,追赶热潮的人不乏有信誓旦旦,觉得坚持就能在传播和变现的路上越走越远,但事实略显骨感,能够脱颖而出的总...

    齿轮易创说互联网
  • 操作系统学习笔记-10:死锁

    死锁现象指的是:在并发环境下,两个或者以上的进程由于竞争资源而造成的一种互相等待(你等我,我等你)的现象,在这种情况下,A 进程拿着 A 资源,需要 B 资源,...

    Chor
  • -1-0 Java 简介 java是什么 java简单介绍

    了解 Java 技术  https://www.java.com/zh_CN/about/

    noteless
  • Python教程如何设置函数的默认参数

    今天马哥教育要跟大家分享的文章是Python教程如何设置函数的默认参数?上一讲我们结束了用文件保存游戏的Python内容,这一讲我们来补充一个小技巧,关于设置函...

    小小科
  • 最新BAT的实习面经

    6. 数据库:事务的概念,索引,B+树讲了一下。可能我回答的太不规范,然后也说了自己忘了数据库的知识了,于是就没往下问

    好好学java
  • Python 3.6学习笔记(一)

    可以看到,注释以#开头,python的变量不需要任何前缀,行结束不需要结束符号,非常符合我们自然语言的阅读和书写习惯。当语句以:结尾时,缩紧的语句视为代码块。

    大江小浪

扫码关注云+社区

领取腾讯云代金券