#include<bits/stdc++.h>
using namespace std;
int dp[110][110],dp1[110][110];
int main(){
int n,rock[10010],sum[10010];
cin >> n;
for(int i =1;i<=n;i++)
{
cin >> rock[i];
rock[i+n]=rock[i];
}
for(int i =1;i<=2*n;i++)
{
sum[i]=sum[i-1]+rock[i];
}
memset(dp,99999999,sizeof(dp));
for(int i =1;i<=2*n;i++) dp[i][i]=0;
for(int i=1;i<n;i++)
{
for(int j=1;j<=2*n-i;j++)
{
for(int k=j;k<j+i;k++)
{
dp[j][j+i]=min(dp[j][j+i],dp[j][k]+dp[k+1][j+i]+sum[j+i]-sum[j-1]);
dp1[j][j+i]=max(dp1[j][j+i],dp1[j][k]+dp1[k+1][j+i]+sum[j+i]-sum[j-1]);
}
}
}
int ans=9999999999,ans1=0;
for(int i=1;i<n;i++) ans=min(ans,dp[i][i+n-1]);
for(int i =1;i<n;i++) ans1=max(ans1,dp1[i][i+n-1]);
cout << ans <<" "<< ans1;
}