最大子串和

简介: 最大子串和

描述

对n个整数的序列a1,a2,a3,....an, 元素ai, ai+1,ai+2, .......  aj-1,aj称为其一个子序列。其中 1 <= i <= j <= n。子序列元素之和称为子段和,即, ai + ai+1+  ai+2 +.......+ aj-1+ aj .

现在,给你一个整数序列(n <= 100000),请求出其所有子串和中最大的一个的值。保证所有子段和都可以用long表示。

输入

第一行是一个整数n,表示序列中整数的个数。

第二行包含n个整数,即a1,a2,a3,....,an

输出

一个整数,为所有子段和中最大的一个的值。

样例输入

6

-2 11 -4 13 -5 -2

样例输出

20

#include<stdio.h>
#include<algorithm>
#include<iostream>
using namespace std;
int main()
{
  int a[100000],n;
  scanf("%d",&n);
  for(int i=0;i<n;i++)
  {
    scanf("%d",&a[i]);
  }
   int dp[n];
   dp[0]=a[0];
   int answer=dp[0];
   for(int i=1;i<n;i++)
   {
    dp[i]=max(dp[i-1]+a[i],a[i]);
    answer=max(answer,dp[i]);
   } 
   printf("%d",answer);
    return 0;
}


相关文章
|
存储 C语言 C++
【C/C++刷题——leetcode】查找字符串中最大的子串
【C/C++刷题——leetcode】查找字符串中最大的子串
302 0
strstr的学习与使用及实现/查找字符串中的字符
strstr的学习与使用及实现/查找字符串中的字符
78 0
字符串中的KMP算法及其改进
字符串中的KMP算法及其改进
|
6月前
|
存储 算法 程序员
【算法训练-字符串 一】【子串问题】最长无重复子串、最长回文子串、最长公共前缀
【算法训练-字符串 一】【子串问题】最长无重复子串、最长回文子串、最长公共前缀
67 0
|
算法
KMP 算法:快速匹配字符字串
KMP 算法主要是在一定长度的字符串中快速匹配出所需的目标字符串,也称模式字串,最大特点就是讲究一个快字。
112 0
KMP 算法:快速匹配字符字串
|
测试技术 索引
根据首尾字符串截取中间字符串
今天分享一个函数:虽然它非常简单,但是真的很好用!也很常用!比如 “我今天真的很高兴” 这句话,要把 `今天` 截取出来,我们可以直接调用函数拿到结果,不需要匹配索引、也不用写正则!
75 0
7-121 删除字符串中的子串
7-121 删除字符串中的子串
67 0
|
JavaScript 前端开发 索引
查找字符串中的字符串
查找字符串中的字符串
84 0