#include<iostream>
#include<cstdio>
#include<algorithm>
#include<climits>
using namespace std;
int a[2005],sum[2005];
int fmi[2005][2005]={INT_MAX},fma[2005][2005];
int main(){
int n;
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
a[i+n]=a[i];
sum[i]=sum[i-1]+a[i];
sum[i+n]=sum[i];
}
for(int len=2;len<=n;len++){
for(int i=1;i<=(n<<1)-len+1;i++){
int j=i+len-1;
for(int k=i;k<j;k++){
fma[i][j]=max(fma[i][j],fma[i][k]+fma[k+1][j]+sum[j]-sum[i-1]);
fmi[i][j]=min(fmi[i][j],fmi[i][k]+fmi[k+1][j]+sum[j]-sum[i-1]);
}
}
}
cout<<fmi[1][n]<<endl;
cout<<fma[1][n]<<endl;
return 0;
}
问一下各位大佬,为什么普通的环形区间dp过不了啊?