#include using namespace std; #define REP(i, n) for(int i = 0; i < n; i++) int main(){ cin.tie(0); ios::sync_with_stdio(false); int n; cin >> n; vector V(n); REP(i, n) cin >> V[i]; int dp[n] = {}; //0-index //dp[i]はi番目までが通過した時までの最大の寿司の価値 dp[0] = V[0]; //これしか取れないので dp[1] = max(V[0], V[1]); //どっちかなので for(int i = 2; i < n; i++){ dp[i] = max(dp[i - 2] + V[i], dp[i - 1]); } cout << dp[n - 1] << endl; return 0; }