#include<bits/stdc++.h>
using namespace std;
int n;
int a[205];
int bdp[205][205],sdp[205][205];//[i,j]极值
int sum[205];
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
memset(sdp,0x3f,sizeof sdp);
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
a[i+n]=a[i];
}
n*=2;
for(int i=1;i<=n;i++) sum[i]=sum[i-1]+a[i];;
for(int i=1;i<=n;i++) sdp[i][i]=0;
for(int len=2;len<=n;len++){
for(int i=1;i<=n-len+1;i++){
int j=i+len-1;
sdp[i][j]=0x3f3f3f3f;
for(int k=i;k<j;k++){//有点像floyd 分割点
sdp[i][j]=min(sdp[i][j],sdp[i][k]+sdp[k+1][j]);
bdp[i][j]=max(bdp[i][j],bdp[i][k]+bdp[k+1][j]);
}
sdp[i][j]+=sum[j]-sum[i-1];
bdp[i][j]+=sum[j]-sum[i-1];
}
}
int small=0x3f3f3f3f,big=-1;
for(int i=1;i<=n;i++){
small=min(small,sdp[i][i+n-1]);
big=max(big,bdp[i][i+n-1]);
}
cout<<small<<"\n"<<big;
return 0;
}
最开始没有断环为链最小值大了1 化了后输出就奇怪的要死