浙大数据结构: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;
	
}
相关推荐
qq_406981036 分钟前
共享变量一 关于extern与const
开发语言·c++
niyongsheng2 小时前
3D 装箱算法工程化:数据结构、放置启发式与支撑规则
数据结构·算法·rust
chari克里2 小时前
QT5.15.2 + msvc2022部署全流程说明(windows可联网环境)
开发语言·c++·qt
码匠许师傅3 小时前
【C++三方组件】mbedTLS:面向嵌入式的轻量 TLS
开发语言·c++
叉烧滑蛋4 小时前
B站台湾大学郭彦甫|MATLAB 学习笔记|04 变量与档案存取
数据结构
?re?ta?rd?ed?4 小时前
C++11新特性,{}与左值
c++·windows
j7~4 小时前
【穷举、深搜与回溯算法】一棵决策树讲透全排列与子集
数据结构·c++·算法·leetcode·回溯·递归
kiracrimson5 小时前
栈与队列容器:适配器、deque 与 priority_queue
开发语言·c++·适配器模式
qq_466302457 小时前
如何通过部分文件名,读取出整个文件名
c++·qt
not coder7 小时前
一文讲通--从树到红黑树
数据结构·算法