题目描述

给出一段序列,选出其中连续且非空的一段使得这段和最大。

输入输出格式

输入格式:

第一行是一个正整数NN,表示了序列的长度。

第二行包含NN个绝对值不大于1000010000的整数A_iAi​,描述了这段序列。

输出格式:

一个整数,为最大的子段和是多少。子段的最小长度为11。

输入输出样例

输入样例#1: 复制

7
2 -4 3 -1 2 -4 3

输出样例#1: 复制

4

说明

【样例说明】

2,-4,3,-1,2,-4,32,−4,3,−1,2,−4,3中,最大的子段和为4,该子段为3,-1,23,−1,2.

【数据规模与约定】

对于40%的数据,有N ≤ 2000N。

对于100%的数据,有N ≤ 200000。

#include<cstdio>
#include<queue>
#include <iostream>
using namespace std;
const int maxn=200005;
int a[maxn];
int maxsubseqsum(int a[],int n)
{
int maxSum=a[0],thisSum=a[0];
for(int i=1;i<n;++i)
{
thisSum+=a[i];
if(thisSum>maxSum)
maxSum=thisSum;
else if(thisSum<0)
thisSum=0;
}
return maxSum;
} int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<n;++i)
scanf("%d",&a[i]);
printf("%d\n",maxsubseqsum(a,n));
return 0;
}

最新文章

  1. 挣值管理 EVM
  2. 数据分析之Numpy基础:数组和适量计算
  3. jQuery-1.9.1源码分析系列(三) Sizzle选择器引擎——总结与性能分析
  4. Sqli-LABS通关笔录-4
  5. mongodb3.2配置文件yaml格式 详解
  6. VMware vSphere 5.1 简介与安装
  7. 个人博客Week3
  8. C# 程序开始主要是写类和方法 的基本步骤和调用方法
  9. Unity3D开发之查找面板上某个脚本(包括Missing)
  10. 《算法问题实战策略》-chaper21-树的实现和遍历
  11. Node.js中Async详解:流程控制
  12. Python模块之hashlib模块、logging模块
  13. JFinal实现伪静态
  14. leetcode 217 Contains Duplicate 数组中是否有重复的数字
  15. c/c++再学习:C++中public、protect、private的访问权限控制
  16. TortoiseSVN 安装时出现 please install the universal crt
  17. R语言-图形辅助
  18. [USACO12MAR] 花盆Flowerpot
  19. I/O模型之四:Java 浅析I/O模型(BIO、NIO、AIO、Reactor、Proactor)
  20. xml字符串,xml对象,数组之间的相互转化

热门文章

  1. source 命令的用法,是在当前bash环境下执行脚本文件
  2. Ubuntu下调整时区时间
  3. codeforces 391E2 (【Codeforces Rockethon 2014】E2)
  4. iOS 通讯录编程【总结】
  5. jenkins任务失败重新构建插件Naginator Plugin
  6. pat1013:数素数
  7. THRDTERM-----干净地结束一个线程
  8. Android 6.0 中TimePicker显示为滚动样式的方法
  9. 协议-网络-安全协议:SSH(安全外壳协议)
  10. 3.4 存储简单数据的利器——Preferences