rt,样例可以,#1-#10wa,最好告诉我错误,不要直接给我AC code
#include<bits/stdc++.h>
using namespace std;
long long n,st[205],en[205],f[205][205];
long long ans=INT_MIN;
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>st[i];
st[i+n]=st[i];
if(i-1)
en[i-1]=en[n+i-1]=st[i];
else
en[n]=en[2*n]=st[i];
}
for(int i=1;i<2*n;i++)
f[i][i+1]=st[i]*en[i]*en[i+1];
for(int i=3;i<=n;i++)
{
for(int j=1;j<=(2*n)-i+1;j++)
{
int jt=j+i;
for(int k=j+1;k<=jt-1;k++)
{
f[j][jt]=max(f[j][jt],f[j][k]+f[k+1][jt]+st[j]*en[k]*en[jt]);
}
}
}
for(int i=1;i<=n;i++)ans=max(ans,f[i][i+n]);
cout<<ans;
return 0;
}