n=int(input())
l=list(map(int,input().split()))
l=l*2
l.insert(0,0)
p=[0]
dp=[[0 for i in range(2*n+1)]for i in range(2*n+1)]
dp2=[[0 for i in range(2*n+1)]for i in range(2*n+1)]
for i in range(1,2*n+1):
p.append(l[i]+p[i-1])
dp[i][i]=0
dp2[i][i]=0
for lenl in range(1,n):
for i in range(1,2*n+1-lenl):
j=i+lenl
for k in range(i,j):
if dp[i][j]==0:
dp[i][j]=dp[i][k]+dp[k+1][j]+p[j]-p[i-1]
else:
dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]+p[j]-p[i-1])
for len2 in range(1,n):
for i in range(1,2*n+1-len2):
j=i+len2
for k in range(i,j):
dp2[i][j]=max(dp[i][j],dp2[i][k]+dp[k+1][j]+p[j]-p[i-1])
maxsum=0
minsum=100000000000000000000000000000000000000000000
for i in range(1,n+1):
if dp2[i][i+n-1]>maxsum:
maxsum=dp2[i][i+n-1]
else:
pass
if dp[i][i+n-1]<minsum:
minsum=dp[i][i+n-1]
else:
pass
print(minsum)
print(maxsum)