洛谷P1115 最大子段和【dp】
2024-08-30 23:44:59
题目描述
给出一段序列,选出其中连续且非空的一段使得这段和最大。
输入输出格式
输入格式:
第一行是一个正整数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;
}
最新文章
- 挣值管理 EVM
- 数据分析之Numpy基础:数组和适量计算
- jQuery-1.9.1源码分析系列(三) Sizzle选择器引擎——总结与性能分析
- Sqli-LABS通关笔录-4
- mongodb3.2配置文件yaml格式 详解
- VMware vSphere 5.1 简介与安装
- 个人博客Week3
- C# 程序开始主要是写类和方法 的基本步骤和调用方法
- Unity3D开发之查找面板上某个脚本(包括Missing)
- 《算法问题实战策略》-chaper21-树的实现和遍历
- Node.js中Async详解:流程控制
- Python模块之hashlib模块、logging模块
- JFinal实现伪静态
- leetcode 217 Contains Duplicate 数组中是否有重复的数字
- c/c++再学习:C++中public、protect、private的访问权限控制
- TortoiseSVN 安装时出现 please install the universal crt
- R语言-图形辅助
- [USACO12MAR] 花盆Flowerpot
- I/O模型之四:Java 浅析I/O模型(BIO、NIO、AIO、Reactor、Proactor)
- xml字符串,xml对象,数组之间的相互转化