浙大数据结构: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;
	
}
相关推荐
如君愿3 分钟前
考研复习 Day 23 | 习题--计算机网络第一章、数据结构线性表
数据结构·计算机网络·考研·课后习题·记录考研
t***54410 分钟前
如何在Dev-C++中配置Clang编译器
开发语言·c++
t***54417 分钟前
Dev-C++ 中使用 Clang 调试有哪些常见问题
开发语言·c++
念何架构之路24 分钟前
数组和切片实战
数据结构·算法·排序算法
重生之我是Java开发战士26 分钟前
【数据结构】AVL树解析
数据结构·算法
Lazionr27 分钟前
数据结构入门:栈实现全解析
c语言·数据结构
珹洺28 分钟前
C++AI多模型聊天系统(四)SSH反向隧道/虚拟局域网(VLAN)调用本地Ollama大模型
c++·人工智能·ssh
小π军29 分钟前
STL之multiset 常见API介绍
数据结构·c++·算法
Shan120529 分钟前
浅谈:从经典算法到实战优化的案例分析
数据结构
Resistance丶未来31 分钟前
DeepSeek-V4 新手快速上手指南
数据结构·python·gpt·算法·机器学习·claude·claude 4.6