fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int main(){
  4.  
  5. vector<int>v={100,100,100};
  6. int n=v.size();
  7.  
  8. vector<vector<int>>dp(n,vector<int>(3, INT_MIN));
  9. dp[0][0]=0;
  10. dp[0][1]=v[0];
  11. dp[0][2]=v[0];
  12.  
  13.  
  14. for(int i=1;i<n;i++){
  15.  
  16. dp[i][0]=max({dp[i-1][1],dp[i-1][2],dp[i-1][0]});
  17. dp[i][1]=max({v[i]+dp[i-1][0],v[i]+dp[i-1][2]});
  18. dp[i][2]=max({v[i]+dp[i-1][0],v[i]+dp[i-1][1]});
  19. }
  20.  
  21.  
  22. cout<<max({dp[n-1][0],dp[n-1][1],dp[n-1][2]})<<endl;
  23.  
  24.  
  25. return 0;
  26. }
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
300