最大连续和(hdu1003)
2013-09-06 10:32
246 查看
状态转移方程:d[i]=max(0,d[i-1])+a[i].
#include<iostream> using namespace std; int N[100005]; int main() { int t,n,s; int i,k,sum,maxa; int flag1,flag2; cin>>t; for(k=1; k<=t; k++) { sum=0; maxa=-100000000; cin>>n; flag1=flag2=s=0; for(i=0; i<n; i++) { cin>>N[i]; sum+=N[i]; if(sum>maxa) { maxa=sum; s=flag2; flag1=i; } if(sum<0) { flag2=i+1; sum=0; } } cout<<"Case "<<k<<":"<<endl<<maxa<<" "<<s+1<<" "<<flag1+1<<endl; if(k!=t) cout<<endl; } return 0; }
相关文章推荐
- 小结:最大连续和,最大子矩阵和--附上hdu1003、poj1050=hdu1081解题报告
- hdu1003 最大连续子序和
- HDU1003 - Max Sum (最大连续子串和)
- hdu1003 最大连续子序和
- HDU1003--Max Sum--最大连续和
- [ACM_动态规划] hdu1003 Max Sum [最大连续子串和]
- hdu1003 最大连续子列和(动态规划★★★☆☆)
- hdu1003 Max sum&hdu1231 最大连续上升子序列
- 最大连续子段和(hdu1003)
- HDU1003 最大连续子序和 DP
- hdu1003 Max Sum (求连续子区间最大和)
- 求一个字符串s的最大连续递增数字子串
- 数组中取出下标不连续的任意个数,求取出的数的和的最大值
- 最大连续乘积
- 输入字符串(由0,1组成),编程计算其中连续0,1出现的最大次数
- 求出数组中连续数和最大
- 求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
- 连续子数组的最大和
- 求一个连续子序列的和的最大值
- 面试题:连续子数组的最大和