Cod sursa(job #342040)

Utilizator vdobrotaDobrota Valentin Eugen vdobrota Data 20 august 2009 14:21:57
Problema Oo Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<stdio.h>
#define MAXLE 1010
#define max(a,b) (a)>(b)?(a):(b)
int main()
{
    freopen("oo.in","r",stdin);
    freopen("oo.out","w",stdout);
    long int n,i,v[MAXLE],x[MAXLE],k,j,sol=0;
    scanf("%ld",&n);
    for(i=1;i<=n;i++)
	scanf("%ld",&v[i]);
    v[n+1]=v[1];
    for(i=1;i<=3&&i<=n-1;i++) {
	for(j=1+i;j<=n-2+i;j++) {
		x[j]=v[j]+v[j-1];
		for(k=j-3;k>=j-5&&k>i;k--)
			x[j]=max(x[j],v[j]+v[j-1]+x[k]);
		sol=max(sol,x[j]);
	}
    }
    printf("%ld\n",max(sol,v[1]+v[2]));
return 0;
}