#include "stdio.h"
int n,a[2000],s[4001];
int max;
int m[2000][2001];
int Max(int a,int b)
{
	if(a>b)
		return a;
	return b;
}
int main()
{
	int i,j;
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d",&a[i]);
		s[i+1]=s[i]+a[i];
	}
	for(i=n;i<2*n;i++)
		s[i+1]=s[i]+a[i%n];
	for(j=1;j<n;j++)
	{
		for(i=0;i<n;i++)
			m[i][j]=Max(m[(i+1)%n][j-1],m[i][j-1])+s[i+j+1]-s[i];
	}
	max=m[0][n-1];
	for(i=0;i<n;i++)
	{
		if(max<m[i][n-1])
			max=m[i][n-1];
	}
	printf("%d\n",max);
	return 0;
}

/**************************************************************
	Problem: 2117
	User: admin
	Language: C
	Result: Accepted
	Time:121 ms
	Memory:16800 kb
****************************************************************/