为什么一定要倒推,只有十分,求助大佬
查看原帖
为什么一定要倒推,只有十分,求助大佬
102668
孤独的牧羊人楼主2020/10/1 23:44
#include<bits/stdc++.h>
using namespace std;
int f[101][210],n,a[210],ans;
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		scanf("%d",&a[i]);
		a[i+n]=a[i];
	}
	for(int i=1;i<=n;i++){
		for(int j=i+1;j<n+i;j++)
			for(int k=i;k<j;k++) f[i][j]=max(f[i][j],f[i][k]+f[k+1][j]+a[i]*a[k+1]*a[j+1]);
		ans=max(ans,f[i][i+n-1]);
	}
	printf("%d\n",ans);
	return 0;
}
2020/10/1 23:44
加载中...