浙大数据结构: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;
	
}
相关推荐
hold?fish:palm15 分钟前
链表的基本原理和实现(C++版本)
数据结构·c++·链表
jufeng130720 分钟前
【系列:MiniKV 原理剖析 · 第 5 篇】
linux·网络·c++·软件工程
码完就睡44 分钟前
数据结构——树、二叉树基础概念
数据结构·算法
豆沙沙包?1 小时前
C++-程序的内存模型(P84-P88)
java·jvm·c++
jufeng13071 小时前
【系列:MiniKV 原理剖析 · 第 8 篇(完结篇)】
linux·c++·log4j·软件工程·makefile
VL——MOESR1 小时前
【LuoguP1967】货车运输【生成树】【倍增】
c++·算法·题解·倍增·生成树
草莓熊Lotso2 小时前
【Linux网络】从0手写Reactor反应堆(二):完善核心细节——ET非阻塞读写、分层架构与回调机制
linux·运维·服务器·网络·c++·tcp/ip·架构
cvby2 小时前
C++哈希
c++·哈希算法·散列表
世事如云有卷舒2 小时前
GoogTest测试框架
c++·测试
疯狂打码的少年2 小时前
【数据结构】栈:定义、顺序栈与链式栈
数据结构·笔记