#include <bits/stdc++.h>
using namespace std;
int main()
{
vector<int>h={100, 100, -50, -50, -50, -50, -50, -50, 100, 100};
int n=h.size();
int ans=-999999;
vector<vector<int>>dp(n,vector<int>(4,-999999));
dp[1][2]=h[0]+h[1];
dp[2][2]=h[1]+h[2];
dp[2][3]=h[1]+h[2]+h[0];
dp[3][2]=h[3]+h[2];
dp[3][3]=h[3]+h[2]+h[1];
dp[4][2]=h[4]+h[3];
dp[4][3]=h[4]+h[3]+h[2];
for(int i=0;i<5;i++){
ans=max({ans,dp[i][2],dp[i][3]});
}
vector<int>a=h;
int a1=-999999,a2=-999999,a3=ans;
for(int i=4;i<n;i++){
int a=h[i]+h[i-1];
int b=h[i]+h[i-1]+h[i-2];
int s1=-999999,s2=-999999,s3=-999999,s4=-999999;
// int a1=-999999,a2=-999999;
// for(int j=i-3;j>=0;j--){
s1=a+dp[i-3][2];
if(i-4>=0)
s3=a+dp[i-4][3];
a1=max({a1,s1,s3});
// }
dp[i][2]=a1;
//for(int j=i-5;j>=0;j--)
//{
if(i-5>=0){
s2=b+dp[i-5][3];
s4=b+dp[i-5][2];
}
a2=max({a2,s2,s4});
// }
dp[i][3]=a2;
a3=max({a3,a1,a2});
}
cout<<a3<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBtYWluKCkKewogICAgdmVjdG9yPGludD5oPXsxMDAsIDEwMCwgLTUwLCAtNTAsIC01MCwgLTUwLCAtNTAsIC01MCwgMTAwLCAxMDB9OwogICAgaW50IG49aC5zaXplKCk7CiAgICAgIGludCBhbnM9LTk5OTk5OTsKICAgIHZlY3Rvcjx2ZWN0b3I8aW50Pj5kcChuLHZlY3RvcjxpbnQ+KDQsLTk5OTk5OSkpOwogICAgZHBbMV1bMl09aFswXStoWzFdOwogICAgZHBbMl1bMl09aFsxXStoWzJdOwogICAgZHBbMl1bM109aFsxXStoWzJdK2hbMF07CiAgICBkcFszXVsyXT1oWzNdK2hbMl07CiAgICBkcFszXVszXT1oWzNdK2hbMl0raFsxXTsKICAgIGRwWzRdWzJdPWhbNF0raFszXTsKICAgIGRwWzRdWzNdPWhbNF0raFszXStoWzJdOwogICAgZm9yKGludCBpPTA7aTw1O2krKyl7CiAgICAgICAgYW5zPW1heCh7YW5zLGRwW2ldWzJdLGRwW2ldWzNdfSk7CiAgICB9CiAgICB2ZWN0b3I8aW50PmE9aDsKICAgaW50IGExPS05OTk5OTksYTI9LTk5OTk5OSxhMz1hbnM7CiAgICBmb3IoaW50IGk9NDtpPG47aSsrKXsKICAgICAKICAgICBpbnQgYT1oW2ldK2hbaS0xXTsKICAgICBpbnQgYj1oW2ldK2hbaS0xXStoW2ktMl07CiAgICAgaW50IHMxPS05OTk5OTksczI9LTk5OTk5OSxzMz0tOTk5OTk5LHM0PS05OTk5OTk7CiAgICAvLyBpbnQgYTE9LTk5OTk5OSxhMj0tOTk5OTk5OwogICAvLyAgZm9yKGludCBqPWktMztqPj0wO2otLSl7CiAgICAgICAgICBzMT1hK2RwW2ktM11bMl07CiAgICAgICAgIGlmKGktND49MCkKICAgICAgICAgIHMzPWErZHBbaS00XVszXTsKICAgICAgICAgIGExPW1heCh7YTEsczEsczN9KTsKICAgICAgICAgIAogICAgLy8gfQogICAgIGRwW2ldWzJdPWExOwogICAgIC8vZm9yKGludCBqPWktNTtqPj0wO2otLSkKICAgICAvL3sKICAgICBpZihpLTU+PTApewogICAgICAgICAgczI9YitkcFtpLTVdWzNdOwogICAgICAgICAgczQ9YitkcFtpLTVdWzJdOwogICAgIH0KICAgICAgICAgYTI9bWF4KHthMixzMixzNH0pOyAKICAgIC8vIH0KICAgICBkcFtpXVszXT1hMjsgCiAgICAgYTM9bWF4KHthMyxhMSxhMn0pOwogICAgIAogICAgfQogICAgY291dDw8YTM8PGVuZGw7CiAgICByZXR1cm4gMDsKfQ==