```cpp
include<bits/stdc++.h>
using namespace std; long long a[1000005],n,ans; long long max(long long x,long long y) { if (x>y) return x; else return y; } long long dp(int l,int r) { long long f[1000005]={},k=-1000000000; for (int j=l;j<=r;j++) { f[j]=max(0,f[j-1])+a[j]; k=max(f[j],k); } return k; } long long read() { long long ret=0,f=1;char ch=getchar(); while (ch<'0'||ch>'9') {if (ch=='-') f=-f; ch=getchar();} while (ch>='0'&&ch<='9') ret=ret10+ch-'0',ch=getchar(); return retf; } int main(){ cin>>n; for(int i=1;i<=n;i++) a[i]=read(); ans=-1000000000; for (int i=2;i<=n-1;i++) { ans=max(dp(1,i-1)+dp(i+1,n),ans); } cout<<ans; return 0; }
```
by wwtao @ 2018-07-03 20:50:27
修正格式
by Alphagocc @ 2018-07-03 21:38:31
@[wwtao](/space/show?uid=73756) 每行前面打一个Tab就可以修正格式了
by 张皓涵 @ 2018-07-24 17:51:25
@[wwtao](/space/show?uid=73756)
#include<bits/stdc++.h>
using namespace std;
long long a[1000005],n,ans;
long long max(long long x,long long y)
{
if (x>y) return x; else return y;
}
long long dp(int l,int r)
{
long long f[1000005]={},k=-1000000000;
for (int j=l;j<=r;j++)
{
f[j]=max(0,f[j-1])+a[j];
k=max(f[j],k);
}
return k;
}
long long read()
{
long long ret=0,f=1;
char ch=getchar();
while (ch<'0'||ch>'9')
{
if (ch=='-') f=-f; ch=getchar();
}
while (ch>='0'&&ch<='9') ret=ret10+ch-'0',ch=getchar();
return retf;
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
a[i]=read();
ans=-1000000000;
for (int i=2;i<=n-1;i++)
ans=max(dp(1,i-1)+dp(i+1,n),ans);
cout<<ans; return 0;
}
闲着没事帮你修了格式,不用谢
by 张皓涵 @ 2018-07-24 17:57:42