Pagini recente » Cod sursa (job #2495828) | Cod sursa (job #2281398) | Cod sursa (job #1816667) | Cod sursa (job #1492217) | Cod sursa (job #60636)
Cod sursa(job #60636)
#include<stdio.h>
int n, oo[100000];
long a[100000], rez;
long max(long x, long y)
{
return a>b?a:b;
}
int main()
{
int i, j, k;
freopen("oo.in","r",stdin);
scanf("%d",&n);
for (i=0; i<n; i++) scanf("%d",oo+i);
if (n==2) rez=oo[0]+oo[1];
else
for (k=0; k<2; 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]);
}
freopen("oo.out","w",stdout);
printf("%ld\n",rez);
return 0;
}