请教一下佬们,这个代码为什么过不了啊
查看原帖
请教一下佬们,这个代码为什么过不了啊
1045458
jack_Y楼主2024/4/6 18:15
#include<bits/stdc++.h> 
using namespace std; 
#define int long long
int dp[210][210], f[210];
int n;	
int dfs(int l, int r){
	if(l >= r) return 0;
	if(dp[l][r]) return dp[l][r];
	if(l + r == 1) return dp[l][r] = f[l] * f[l + 1] * f[l + 2];
	return dp[l][r] = max(dfs(l + 1, r) + f[l] * f[l + 1] * f[r + 1], dfs(l, r - 1) + f[l] * f[r] * f[r + 1]);
}
signed main(){
    std::ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    cin >> n; 
    for(int i = 1; i <= n; i ++){
    	cin >> f[i];
    	f[i + n] = f[i];
    }
    int ans = 0;
    for(int i = 1; i <= n; i ++){
    	ans = max(ans, dfs(i, i + n - 1));
    }
    cout << ans << endl;
	return 0; 	
}	
2024/4/6 18:15
加载中...