有点小细节需要注意 sum实时维护有效的连续和 /*H E A D*/ ll dp1[maxn],dp2[maxn]; ll a[maxn],n,sum; int main(){ while(~iin(n)){ rep(i,1,n) a[i]=read(); dp1[0]=-(1ll<<62);dp2[n+1]=dp1[0]; // rep(i,1,n) dp1[i]=max(dp1[i-1]+a[i],a[i]);//a[i]无论如何都加上去了 // rrep(i,n,1) dp2[i]=m…