c++10分HELP,急!!!(悬赏关注1个)
查看原帖
c++10分HELP,急!!!(悬赏关注1个)
816840
congzihan414楼主2023/8/3 20:21
#include<bits/stdc++.h>
using namespace std;
long long n,a[1005],f[1005][1005],maxn=-2100000000;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	for(int i=2;i<=n*2;i++){
		for(int j=1;j<=n;j++){
			for(int k=j;k<j+i-1;k++){
				f[j][j+i-1]=max(f[j][k]+f[k+1][j+i-1]+a[j]*a[k+1]*a[j+i-1],f[j][j+i-1]);
			}
			if(j>j+i-1) j=1;
		}
	}
	for(int i=1;i<=n*2;i++){
		maxn=max(maxn,f[i][i+n]);
	}
	cout<<maxn;
}
2023/8/3 20:21
加载中...