浙大数据结构: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;
	
}
相关推荐
chase_my_dream12 小时前
C++ + SLAM 高频面试问题整理
开发语言·c++·面试
想要成为糕糕手12 小时前
前端必修课:JavaScript 数组与数据结构底层逻辑全解析
javascript·数据结构·面试
牛油果子哥q12 小时前
【C++ STL string 】C++ STL string 终极精讲:底层原理、内存机制、全套API、深浅拷贝、易错坑点与工程实战规范
数据库·c++
凡人叶枫14 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
tyung14 小时前
Go 手写 Wait-Free SPSC 无界队列:无 CAS、无锁、泛型节点池
数据结构·后端·go
不想写代码的星星15 小时前
std::move 根本不移动,就像老婆饼里没有老婆
c++
redaijufeng15 小时前
C++雾中风景7:闭包
c++·算法·风景
Chen_harmony15 小时前
一、数据结构概念和复杂度计算
数据结构
小欣加油15 小时前
leetcode287寻找重复数
数据结构·c++·算法·leetcode
思麟呀15 小时前
C++11 核心特性(三):强类型枚举、static_assert 与 std::tuple
开发语言·c++