hdu1003 最大连续子序列和
2014-12-03 18:35
274 查看
简单的动规问题,题目的大概意思就是给一个数组,求这个数组子序列的最大值
这个题目其实不需要建立数组,设一个变量sum来存储它的值,当这个sum值小于0的时候就把它置零
然后再用两个变量来保存开始和结束的子序列的下标
当开始做的时候我还使用了二维数组的做法,使用了三层for循环,结果可想而知,超时
后来用这个方法提交的时候,好几次都是格式错误,比较坑了
输入
1
5 6 -1 5 4 -7
输出
15
这个题目其实不需要建立数组,设一个变量sum来存储它的值,当这个sum值小于0的时候就把它置零
然后再用两个变量来保存开始和结束的子序列的下标
当开始做的时候我还使用了二维数组的做法,使用了三层for循环,结果可想而知,超时
后来用这个方法提交的时候,好几次都是格式错误,比较坑了
输入
1
5 6 -1 5 4 -7
输出
15
#include<stdio.h> int main() { int n,m,a,x1,x2,x,m1,sum; scanf("%d",&n); m1=1; while(n--) { sum=0; x1=x2=x=1; scanf("%d",&m); int max=-9999; for(int i=0;i<m;i++) { scanf("%d",&a); sum+=a; if(sum>max) { max=sum; x1=x; x2=i+1; } if(sum<0) { sum=0; x=i+2; } } if(m1!=1) printf("\n"); printf("Case %d:\n%d %d %d\n",m1,max,x1,x2); m1++; } return 0; }
相关文章推荐
- HDU1003--最大连续子序列
- Max Sum(HDU1003)最大连续子序列和
- HDU1003最大连续子序列和
- HDU1003(最大连续子序列)
- HDU1003(最大连续子序列和DP)
- hdu1003 最大连续子序列
- HDU 1231 最大连续子序列(和HDU1003 Max Sum类似的)
- 最大连续子序列之和
- HDU 1231 最大连续子序列 逻辑模拟
- HDU 1231——最大连续子序列(DP)
- hdu1231 最大连续子序列
- 最大连续子序列和-动态规划
- HDU1003 Max Sum(动态规划,最大子序列和)
- 最大连续子序列的和(normal)
- HDU 1231 最大连续子序列
- hdu 1231 最大连续子序列
- hdu1003求最大子序列
- HDU_1231 最大连续子序列 【动态规划】
- hdu 1231最大连续子序列 动态规划
- HDU 1231 最大连续子序列