最大连续和

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<algorithm>
 5 using namespace std;
 6 #define INF 0x3f3f3f3f
 7 const int maxn = 1000;
 8 int s[maxn];
 9 int A[maxn];
10 
11 int main(){
12     int n;
13     cin>>n;
14     memset(s,0,sizeof(s));
15     for( int i=1; i<=n; i++ ){
16         cin>>A[i];
17         s[i]=s[i-1]+A[i];
18     }
19     for( int i=1; i<=n; i++ ){
20         cout<<s[i]<<" ";
21     }
22     cout<<endl;
23     int ans=0;
24 //    for( int i=1; i<=n; i++ ){
25 //        for( int j=i; j<=n; j++ ){
26 //            ans=max(ans,s[j]-s[i-1]);
27 //        }
28 //    }
29     int tmp=0;
30     for( int i=1; i<=n; i++ ){
31         tmp=min(tmp,s[i]);
32         ans=max(ans,s[i]-tmp);
33     }
34     cout<<ans<<endl;
35     return 0;
36 }
37 //4 5 3 6 -1 -4 -3 9
有些目标看似很遥远,但只要付出足够多的努力,这一切总有可能实现!
原文地址:https://www.cnblogs.com/Bravewtz/p/10555053.html