#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
****************************************************************/