#define maxlongint 1000000
int main()
{
int n,stone[200]={0},sum[105][105]={0},fmin[105][105]={0},fmax[105][105]={0};
scanf("%d",&n);
int a,b,c,i,d;
for(i=1;i<=n;i++)
{
scanf("%d",&stone[i]);
sum[i][1]=stone[i];
}
for(b=2;b<=n;b++)
for(a=1;a<=n;a++)
sum[a][b]=stone[a]+sum[a%n+1][b-1];
for(b=2;b<=n;b++)
for(a=1;a<=n;a++)
{
fmin[a][b]=maxlongint;
fmax[a][b]=-maxlongint;
for(c=1;c<=b-1;c++)
{
d=(a+c-1)%n+1;
if(fmin[a][b]>fmin[a][c]+fmin[(a+c-1)%n+1][b-c]+sum[a][b])
fmin[a][b]=fmin[a][c]+fmin[(a+c-1)%n+1][b-c]+sum[a][b];
if(fmax[a][b]<fmax[a][c]+fmax[(a+c-1)%n+1][b-c]+sum[a][b])
fmax[a][b]=fmax[a][c]+fmax[(a+c-1)%n+1][b-c]+sum[a][b];
}
}
int max=-maxlongint,min=maxlongint;
for(a=1;a<=n;a++)
{
if(fmax[a][n]>max)
max=fmax[a][n];
if(fmin[a][n]<min)
min=fmin[a][n];
}
printf("%d\n%d",min,max);
return 0;
}