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 }