Pagini recente » Cod sursa (job #1797461) | Cod sursa (job #2953638) | Cod sursa (job #2071642) | Cod sursa (job #2058349) | Cod sursa (job #2611906)
#include <bits/stdc++.h>
using namespace std;
ifstream in("oo.in");
ofstream out("oo.out");
int dp[100005], v[100005];
int mx;
void f(int a, int b)
{
dp[a + 1] = v[a] + v[a + 1];
for(int i = a + 2; i <= b; i ++)
dp[i] = max(dp[i - 1], dp[i - 3] + v[i] + v[i - 1]);
mx = max(mx, dp[b]);
}
int main()
{
int n;
in >> n;
for(int i = 1; i <= n; i ++)
in >> v[i];
v[n + 1] = v[1];
f(1, n - 1);
dp[2] = 0;
f(2, n);
dp[3] = 0;
f(3, n + 1);
out << mx;
return 0;
}