标签:content i++ bsp esc art 意思 += amp ble
#include<stdio.h> #include<string.h> int main() { int t,num=0;; scanf("%d",&t); while(t--) { num++; int n,temp=1,a;//temp表示当前最大区间开头所在位置,一开始假定为1 scanf("%d",&n); int start=1,max=-1001,end1,sum=0; for(int i=0;i<n;i++) { scanf("%d",&a);//a就是区间元素了,由于只用一次,所以就不用数组浪费内存了 sum+=a; if(sum>max)//max 表示目前为止最大区间的和,sum大于max,说明区间改变 { max=sum; end1=i+1; start=temp; } if(sum<0)//sum小于0,则表示若前面的temp为开头,不会有最大区间,故将sum,temp重置。 { sum=0;//sum=0表示重新开始计算最大区间(下面的也是这个意思) temp=i+2; } } printf("Case %d:\n%d %d %d\n",num,max,start,end1); if(t!=0) printf("\n"); } return 0; }
标签:content i++ bsp esc art 意思 += amp ble
原文地址:https://www.cnblogs.com/shenyuling/p/9690368.html