#include <bits/stdc++.h>
using namespace std;
int main()
{
vector<int>a={5,6,-1,4,-6,8,-14,6};
int n=a.size();
int curr=INT_MIN;
int prev=INT_MIN;
vector<int>p3(n+1,INT_MIN),p4(n+1,INT_MIN);
prev=max(a[0],0);
p3[0]=prev;
for(int i=1;i<n;i++){
curr=max({prev+a[i],a[i],0});
p3[i]=max(p3[i-1],curr);
prev=curr;
}
prev=max({a[n-1],0});
p4[n-1]=prev;
for(int i=n-2;i>=0;i--){
curr=max({prev+a[i],a[i],0});
p4[i]=max(p4[i+1],curr);
prev=curr;
}
int ans=INT_MIN;
ans=p4[0];
for(int i=0;i<n;i++){
ans=max(ans,p3[i]+p4[i+1]);
}
cout<<" ans "<<ans<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKICAgCiAgICB2ZWN0b3I8aW50PmE9ezUsNiwtMSw0LC02LDgsLTE0LDZ9OwogICAgaW50IG49YS5zaXplKCk7CiAgICBpbnQgY3Vycj1JTlRfTUlOOwogICAgaW50IHByZXY9SU5UX01JTjsKCiAgICB2ZWN0b3I8aW50PnAzKG4rMSxJTlRfTUlOKSxwNChuKzEsSU5UX01JTik7CiAgICBwcmV2PW1heChhWzBdLDApOwogICAgcDNbMF09cHJldjsKICAgIGZvcihpbnQgaT0xO2k8bjtpKyspewogICAgICAgIGN1cnI9bWF4KHtwcmV2K2FbaV0sYVtpXSwwfSk7CiAgICAgICAgcDNbaV09bWF4KHAzW2ktMV0sY3Vycik7CiAgICAgICAgcHJldj1jdXJyOwogICAgfQoKICAgIHByZXY9bWF4KHthW24tMV0sMH0pOwogICAgcDRbbi0xXT1wcmV2OwogICAgZm9yKGludCBpPW4tMjtpPj0wO2ktLSl7CiAgICAgICAgY3Vycj1tYXgoe3ByZXYrYVtpXSxhW2ldLDB9KTsKICAgICAgICBwNFtpXT1tYXgocDRbaSsxXSxjdXJyKTsKICAgICAgICBwcmV2PWN1cnI7CiAgICB9CgogICAgCiAgICBpbnQgYW5zPUlOVF9NSU47CiAgICBhbnM9cDRbMF07CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICBhbnM9bWF4KGFucyxwM1tpXStwNFtpKzFdKTsKICAgIH0KICAgIGNvdXQ8PCIgYW5zICI8PGFuczw8ZW5kbDsKICAgIHJldHVybiAwOwp9