Pagini recente » Cod sursa (job #1817836) | Cod sursa (job #2991320) | Cod sursa (job #2261690) | Cod sursa (job #1072630) | Cod sursa (job #797047)
Cod sursa(job #797047)
#include<stdio.h>
#define dim 100010
int i,n,max,V[dim],D[dim];
FILE*f=fopen("oo.in","r");
FILE*g=fopen("oo.out","w");
int maxim(int a,int b){
if(a>b)
return a;
return b;
}
int main(){
fscanf(f,"%d",&n);
for(i=1;i<=n;i++)
fscanf(f,"%d",&V[i]);
D[2]=V[1]+V[2];D[1]=0;
for(i=3;i<n;i++){
D[i]=maxim(D[i-1],V[i]+V[i-1]+D[i-3]);
if(D[i]>max)
max=D[i];
}
D[1]=D[2]=0;D[3]=V[2]+V[3];
for(i=4;i<n;i++){
D[i]=maxim(D[i-1],V[i]+V[i-1]+D[i-3]);
if(D[i]>max)
max=D[i];
}
V[n+1]=V[1];D[1]=D[2]=D[3]=0;D[4]=V[3]+V[4];
for(i=5;i<=n+1;i++){
D[i]=maxim(D[i-1],V[i]+V[i-1]+D[i-3]);
if(D[i]>max)
max=D[i];
}
if(n==3)
max=maxim(V[1]+V[2],V[2]+V[3]);
if(n==2)
max=V[1]+V[2];
fprintf(g,"%d",max);
return 0;
}