Pagini recente » Cod sursa (job #3321672) | Cod sursa (job #3340160) | Cod sursa (job #3323340) | Cod sursa (job #3338347)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int v[1000005], dp[1000005];
int n, add, rez;
int solve(int st, int fn) {
for (int i = 1; i <= n + 1; i++)
dp[i] = 0;
for (int i = st + 1; i <= st + fn - 1; i++) {
add = 0;
if (i >= 4) {
add = dp[i - 3];
}
dp[i] = max(dp[i - 1], v[i - 1] + v[i] + add);
}
return dp[st + n - 2];
}
int main() {
fin >> n;
for (int i = 1; i <= n; i++)
fin >> v[i];
v[n + 1] = v[1];
rez = max(solve(3, n), solve(1, n));
rez = max(rez, solve(2, n));
fout << rez;
return 0;
}