Pagini recente » Cod sursa (job #2558353) | Cod sursa (job #1987977) | Cod sursa (job #275002) | Cod sursa (job #1109031) | Cod sursa (job #2729151)
// problema oo
#include <iostream>
#include <fstream>
#include <cmath>
#include <algorithm>
#include <string>
#include <cstring>
#include <vector>
#include <stack>
#include <queue>
#include <deque>
#define NMax 100000
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int n, o[NMax + 3], dp[2][NMax + 3];
void input() {
fin >> n;
for (int i = 1; i <= n; ++i) fin >> o[i];
}
void init() {
dp[0][2] = o[1] + o[2];
dp[1][3] = o[2] + o[3];
for (int k = 0; k <= 1; ++k)
for (int i = k + 3; i <= n - 1 + k; ++i)
dp[k][i] = max(dp[k][i - 1], (dp[k][i - 3] + o[i] + o[i - 1]));
}
void solve() {
fout << max(dp[0][n - 1], dp[1][n]);
}
int main() {
input();
init();
solve();
}