RT,求程序的解析
#include <bits/stdc++.h>
using namespace std;
int n,a[310];
int calc(int l,int r){
int i,ans,tmp;
if (l>r) return 0;
ans=calc(l+1,r)+(r-l+1)*(r-l+1)*a[l];
for (i=l+1;i<=r;i++)
{
tmp=calc(l,i-1)+calc(i+1,r)+(r-l+1)*(r-l+1)*a[i];
if (tmp<ans) ans=tmp;
}
return ans;
}
int i;
int main()
{
scanf("%d",&n);
for (i=1;i<=n;i++) scanf("%d",&a[i]);
cout<<calc(1,n);
return 0;
}