浙大数据结构:01-复杂度1 最大子列和问题

数据结构MOOC

PTA习题

01-复杂度1 最大子列和问题

使用在线处理,遍历数组,如果当前数组和小于0则抛弃,每次更新最大值。

我们假设最终结果为数组中间的一段,那么左边剩余的部分和右边剩余的部分和一定小于0,对答案没有贡献。

cpp 复制代码
#include <iostream>
using namespace std;

const int M=100005;
int a[M];
int main()
{
    int k;
    cin>>k;
    for(int i=0;i<k;i++ )cin>>a[i];

    int s=0,ma=0;
    for(int i=0;i<k;i++)
    {
        s+=a[i];
        ma=max(s,ma);
        if(s<0)
        {
            s=0;
        }
}
    cout<<ma;
    
	return 0;
	
}
相关推荐
kaixin_learn_qt_ing2 分钟前
Qt&C++软件开发工程师
c++
UIU1144 分钟前
-7 / 2 在 C 里是 -3,在 Python 里是 -4,谁算错了?
c++·学习·c#
BenedictHook4 分钟前
技能商店 SkillHub:Windows端 AI Skill 管理工具,支持搜索、查看与安装
c++·agent·桌面应用·skill·windows开发·skillhub
无名猿7 分钟前
指针算术与数组退化:数组名到底是不是指针
c++·内存管理·标准库·语法基础
汉克老师7 分钟前
GESP2026年9月认证C++七级( 第一部分选择题(1~7题)精讲
c++·gesp·小学生·学c++编程
mmmmath_316 分钟前
LeetCode.150.逆波兰表达式求值
数据结构
程序员老陆20 分钟前
C++ 悬空指针:从原理到工程级解决方案
开发语言·c++·程序设计
漂流瓶jz34 分钟前
UVA-1610 聚会游戏 题解答案代码 算法竞赛入门经典第二版
数据结构·c++·算法·题解·aoapc·算法竞赛入门经典·uva
随意起个昵称42 分钟前
【线性DP】P10156 [LSOT-2] 胜者组
c++·动态规划
imDwAaY43 分钟前
Redis Set 如何节省内存?从整数集合到哈希表的设计取舍
数据结构·redis·散列表