1 solutions
-
1
#include<bits/stdc++.h> using namespace std; const int N=2e5+10; int s[N],f[N];//f[i]表示以a[i]结尾的最大字段和 int main() { int n; cin>>n; for(int i=1;i<=n;i++) { cin>>s[i]; } memset(f,-0x3f,sizeof f); f[0]=0; for(int i=1;i<=n;i++) { f[i]=s[i]; if(f[i-1]>0) { f[i]=max(f[i],f[i-1]+s[i]); } } int res=-0x3f3f3f3f; for(int i=1;i<=n;i++) { res=max(res,f[i]); } cout<<res; return 0; }
- 1
Information
- ID
- 3051
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 3
- Tags
- (None)
- # Submissions
- 16
- Accepted
- 8
- Uploaded By