Pagini recente » Cod sursa (job #1383852) | Cod sursa (job #1677556) | Cod sursa (job #107598) | Cod sursa (job #2942364) | Cod sursa (job #557066)
Cod sursa(job #557066)
#include<stdio.h>
#define maxN 100007
FILE*f=fopen("oo.in","r");
FILE*g=fopen("oo.out","w");
int N,i,A[maxN],Sol,D[maxN];
void solve( int p ,int u ){
D[p-1] = A[p-2] + A[p-1];
D[p-2] = 0;
for ( int i = p ; i <= u ; ++i ){
D[i] = D[i-1] > D[i-3] + A[i] + A[i-1] ? D[i-1] : D[i-3] + A[i] + A[i-1];
}
if ( D[u] > Sol )
Sol = D[u];
}
int main () {
fscanf(f,"%d",&N);
for ( i = 1 ; i <= N ; ++i ){
fscanf(f,"%d",&A[i]);
}
A[N+1] = A[1];
solve(3,N-1);
solve(4,N);
solve(5,N+1);
fprintf(g,"%d\n",Sol);
fclose(f);
fclose(g);
return 0;
}