CSU 1529: Equator(dp)
2015-06-04 23:59
281 查看
1529: Equator
Time Limit: 5 Sec Memory Limit:128 MB
Submit: 419 Solved: 156
[Submit][Status][Web
Board]
Description
Input
Output
Sample Input
3 3 1 2 3 8 4 5 -1 -1 1 -1 -1 5 2 -1 -1
Sample Output
6 14 0
HINT
题意:给你n个数,按顺序接成一个环,求环的最大连续和。题解:求出数列的最大连续和Max以及最小连续和Min,数列总和为sum,ans=max(sum-Min,Max).
#include<set> #include<map> #include<queue> #include<stack> #include<ctime> #include<deque> #include<cmath> #include<vector> #include<string> #include<cctype> #include<cstdio> #include<cstdlib> #include<cstring> #include<sstream> #include<iostream> #include<algorithm> #define REP(i,s,t) for(int i=(s);i<=(t);i++) #define REP2(i,t,s) for(int i=(t);i>=s;i--) using namespace std; typedef long long ll; typedef unsigned long long ull; typedef unsigned long ul; const int N=1000005; int T; int n; int a ; int main() { //freopen("test.in","r",stdin); scanf("%d",&T); while(T--) { scanf("%d",&n); int s=0; REP(i,1,n) { scanf("%d",&a[i]); s+=a[i]; } int sum=0,ssum=0; int Max=0,Min=0; REP(i,1,n) { sum+=a[i]; ssum+=a[i]; if(sum<0) { sum=0; } if(sum>Max) { Max=sum; } if(ssum>0) { ssum=0; } if(ssum<Min) { Min=ssum; } } printf("%d\n",max(Max,s-Min)); } return 0; }
相关文章推荐
- css
- 数据类型回顾——NaN和isNaN—JS学习笔记2015-6-4(第48天)
- LPCSTR等类型
- 完美世界手游《圣斗士星矢》lua逻辑框架分析
- Django1.8+Python3.4环境搭建填坑整合
- selenium测试框架篇,页面对象和元素对象的管理
- sqlite3如何建立自动增长字段?
- #pragma
- 在集群运行spark代码记录程序
- 如何判断手机浏览器是否有安全隐患?
- Android编码规范
- servlet 项目 ,,启动没问题,,但是,一请求也面就报错误。。。。求解决。。。。。。。。。。。。。各种百度,都没解决了啊。。。。。急急急急急急急急急急急急急急急急急急
- mysql 的count(*)统计结果很慢?为什么
- [C]simple code of count input lines,words,chars
- [C]simple code of count input lines,words,chars
- Summary Day30
- Android 数据库打包随APK发布
- Two Sum的快排暴力解法
- Swift—初始 (1)
- 1到N中“1”出现的次数