Pagini recente » Cod sursa (job #2561096) | Cod sursa (job #670054) | Cod sursa (job #3166094) | Cod sursa (job #2688807) | Cod sursa (job #1197502)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int a[100004],b[100004],c[100040],s[100004];
ifstream fin("oo.in");
ofstream fout("oo.out");
int main()
{
int n,i,best=0,x,y,p;
fin>>n;
fin>>x;
p=x;
for(i=3;i<n+2;i++)
{
fin>>y;
s[i]=x+y;
x=y;
}
fin>>y;
s[n+2]=p+y;
s[1]=s[n+1];
s[2]=s[n];
a[1]=a[2]=s[1];
for(i=3;i<=n;i++)
a[i]=max(a[i-3]+s[i],a[i-1],a[i-2]);
best=max(best,a[n]);
b[1]=b[2]=s[2];
for(i=3;i<=n;i++)
b[i]=max(a[i-3]+s[i+1],a[i-1],a[i-2]);
best=max(best,b[n]);
c[1]=c[2]=s[3];
for(i=3;i<=n;i++)
c[i]=max(a[i-3]+s[i+2],a[i-1],a[i-2]);
best=max(best,c[n]);
fout<<best<<'\n';
return 0;
}