先上题目:
Time Limit: 2000/1000 MS
(Java/Others) Memory Limit: 65536/32768 K
(Java/Others)
Total Submission(s): 16518 Accepted
Submission(s): 7251
1 #include <cstdio> 2 #include <cstring> 3 #define MAX 10010 4 using namespace std; 5 6 int a[MAX],t,maxn; 7 8 int main() 9 { 10 int l,r,sum; 11 bool f; 12 //freopen("data.txt","r",stdin); 13 while(scanf("%d",&t),t){ 14 maxn=sum=0; 15 l=0; 16 r=t-1; 17 f=1; 18 for(int i=0;i<t;i++){ 19 scanf("%d",&a[i]); 20 } 21 int l_=0; 22 for(int i=0;i<t;i++){ 23 if(sum>0){ 24 sum+=a[i]; 25 }else{ 26 sum=a[i]; 27 l_=i; 28 29 } 30 if(sum>maxn){ 31 maxn=sum; 32 l=l_; 33 r=i; 34 f=0; 35 }else if(f && sum==0){ 36 f=0; 37 l=l_; 38 r=i; 39 } 40 } 41 printf("%d %d %d\n",maxn,a[l],a[r]); 42 } 43 return 0; 44 }
原文:http://www.cnblogs.com/sineatos/p/3523071.html