Pagini recente » Cod sursa (job #2525611) | Cod sursa (job #2819374) | Cod sursa (job #2093736) | Cod sursa (job #2557457) | Cod sursa (job #949586)
Cod sursa(job #949586)
#include <cstdio>
#include <cstring>
using namespace std;
int A[100001],oo[100001],i,n,rez,k;
int maX(int x,int y)
{
if (x>y) return x;
else return y;
}
int main()
{
freopen("oo.in","r",stdin);
freopen("oo.out","w",stdout);
scanf("%d",&n);
for (i=1; i<=n; i++) scanf("%d",&oo[i]);
if (n==2) rez=oo[0]+oo[1];
else for (k=0;k<3;k=(k+1)%n)
{
A[k]=0;
A[(k+1)%n]=0;
A[(k+2)%n]=oo[(k+1)%n]+oo[(k+2)%n];
for (i=(k+3)%n; i!=k; i=(i+1)%n)
A[i]=maX(A[(i-1+n)%n],A[(i-3+n)%n]+oo[(i-1+n)%n]+oo[i]);
rez=maX(rez,A[(k-1+n)%n]);
}
printf("%d",rez);
return 0;
}