#include<bits/stdc++.h>
using namespace std;
int main(){
    
    vector<int>v={100,100,100};
    int n=v.size();
    int p=1;
    int k=3;
    //int dp[n][k+1][n+1]={INT_MIN}; only initializes first element.
    vector<vector<vector<int>>>dp(n,vector<vector<int>>(k+1,vector<int>(n+1,INT_MIN)));
    for(int i=0;i<n;i++){
        
            dp[i][0][0]=0;
        
    }
    dp[0][1][0]=v[0];
    dp[1][1][0]=max(v[0],v[1]);
    dp[1][2][0]=INT_MIN;
    dp[1][2][1]=v[0]+v[1]-p;
    
    for(int i=2;i<n;i++){
        for(int j=1;j<=k;j++){
            for(int c=0;c<=i;c++){
                dp[i][j][c]=max({dp[i-1][j][c],v[i]+dp[i-2][j-1][c],v[i]+v[i-1]-p+dp[i-2][j-2][c-1]});
            }
        }
    }
    
    cout<<*max_element(dp[n-1][k].begin(),dp[n-1][k].end())<<endl;
    
    return 0;
}