Pagini recente » Cod sursa (job #2581911) | Cod sursa (job #518671) | Cod sursa (job #3185134) | Cod sursa (job #375225) | Cod sursa (job #949590)
Cod sursa(job #949590)
#include <cstdio>
using namespace std;
int maxi(int a,int b){
if(a>b) return a;
else return b;
}
int n,oo[100001],i,j,k;
long rez,a[100001];
int main(){
freopen("oo.in","r",stdin);
freopen("oo.out","w",stdout);
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<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]=maxi(a[(i-1+n)%n],a[(i-3+n)%n]+oo[(i-1+n)%n]+oo[i]);
rez=maxi(rez,a[(k-1+n)%n]);
}
printf("%ld\n",rez);
return 0;
}