Pagini recente » Cod sursa (job #2313960) | Cod sursa (job #2579045) | Cod sursa (job #1541138) | Cod sursa (job #1839759) | Cod sursa (job #1428319)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int a[100001], b[100001];
int main()
{
ifstream in("oo.in");
ofstream out("oo.out");
int i, n,maxim=0;
in >> n;
for (i = 1;i <= n;i++)
{
in >> a[i];
}
a[0] = a[n];
b[0] = a[0] + a[1];
b[1] = a[1] + a[2];
b[2] = a[2] + a[3];
for (i = 3;i <= n - 2;i++)
{
b[i] = max(a[i] + a[i + 1] + b[i - 3], b[i - 1]);
}
maxim = b[n - 2];
b[0] = 0;
b[1] = a[1] + a[2];
b[2] = a[2] + a[3];
for (i = 3;i <= n-1;i++)
{
b[i] = max(a[i] + a[i + 1] + b[i - 3], b[i - 1]);
}
maxim = max(maxim, b[n - 1]);
b[0] = 0;
b[1] = 0;
b[2] = a[2] + a[3];
for (i = 3;i <= n;i++)
{
b[i] = max(a[i] + a[i + 1] + b[i - 3], b[i - 1]);
}
maxim = max(maxim, b[n]);
out << maxim;
}