OJ_最大序列和

题干

C++实现

cpp 复制代码
#include <stdio.h>
#include <algorithm>
using namespace std;

long long s[1000001];
long long dp[1000002];//dp[i]是前i个元素中必须包含右边缘的最大子序和

int main() {
    int n;
    scanf("%d",&n);
    for(int i = 0; i< n;i++){
        scanf("%lld",&s[i]);
    }

    dp[1] = s[0];
    long long curmax = dp[1];
    for(int i = 2;i<=n;i++){
        if(dp[i-1] <= 0){
            dp[i] = s[i-1];
        }else{
            dp[i] = s[i-1]+dp[i-1];
        }
        curmax = max(dp[i],curmax);
    }
    printf("%lld",curmax);
    return 0;
}
相关推荐
buhuizhiyuci5 分钟前
【python篇——一周速通python语法】python的条件语句和循环语句
开发语言·python
geovindu9 分钟前
go: Recursion Algorithm
开发语言·后端·算法·golang·递归算法
geovindu15 分钟前
CSharp: Composite Pattern
开发语言·后端·c#·组合模式·结构型模式
消失的旧时光-194320 分钟前
KMP Web 开发实战(二):js、wasmJs、browser、executable 到底是什么意思?
开发语言·前端·javascript·跨平台·kmp
十五年专注C++开发28 分钟前
qobject_cast转换失败原因分析
c++·qt·dynamic_cast·qobject_cast
sycmancia30 分钟前
Qt——线程的生命期问题
开发语言·qt
影寂ldy31 分钟前
C# 多线程进阶知识点(线程优先级、多委托传参、线程锁、死锁)
开发语言·数据库·c#
国服第二切图仔33 分钟前
09-搜索工具Grep与Glob
开发语言·javascript·ecmascript
小保CPP40 分钟前
OCR C++ Tesseract按单词识别字符
c++·人工智能·ocr·模式识别·光学字符识别
凤山老林43 分钟前
从“无法创建本地线程“异常说起:深度解析线程栈与JVM线程优化指南
java·开发语言·jvm