hud 1003

 1 #include<stdio.h>
 2 #include<string.h>
 3 int main()
 4 {
 5     int c=1,T,t,i,n,l,j,sum[110000];
 6     scanf("%d",&T);
 7     int start,end,min,max;
 8     while(T--)
 9     { 
10       memset(sum,0,sizeof(sum));
11       scanf("%d",&n);
12       for(i=1;i<=n;i++)
13       {
14         scanf("%d",&t);
15         sum[i]=sum[i-1]+t;
16       }
17       start=-1;end=-1;
18       min=110000000;
19       max=-110000000;
20       for(j=1;j<=n;j++)
21       {
22         if(sum[j-1]<min)
23         {
24          min=sum[j-1]; l=j;
25         }
26         if(sum[j]-min>max)
27         {
28           max=sum[j]-min;
29           end=j;
30           start=l; 
31         }
32         
33       }
34       printf("Case %d:\n%d %d %d\n",c++,max,start,end);
35         if(T)
36         printf("\n");
37       
38     }
39     return 0;
40 }

 

posted @ 2014-04-25 19:24  hpu张亚飞  阅读(213)  评论(0编辑  收藏  举报