hdu 题目1003 Max Sum (最大连续子序列和)

http://acm.hdu.edu.cn/showproblem.php?pid=1003

 

这个如果全是负数的话;

最大子序列和不是0;

 

#include 

int main()
{
	int n,t,tt,i,tmp,sum,max,tmax,start,end,a0;
	scanf("%d",&t);
	for(tt=1;tt<=t;tt++){
		scanf("%d%d",&n,&a0); 
		max = tmax = a0;
		start = end = tmp =1;
		for(i=2;i<=n;i++){
			scanf("%d",&a0);
			if(tmax + a0 < a0){
				tmax = a0;
				tmp = i;
			}
			else 	tmax += a0;
			if(tmax > max){
				max = tmax;
				start = tmp;
				end = i;
			}
		}
		printf("Case %d:\n%d %d %d\n",tt,max,start,end);
		if (tt


 

你可能感兴趣的:(ACM)