#include<iostream> #include<vector> #include<algorithm> using namespace std; int main(){ int n; cin >> n; vector<int> init(n+1, 0); for (int i = 1; i <= n; i++) cin >> init[i]; vector<int> tmp(n+2,0); vector<vector<int>> dp(n+2, tmp); for (int i = 1; i <= n; i++) { for (int j = 1; j <= n - i + 1; j++) { dp[j][i] = max(dp[j + 1][i - 1] + (n - i + 1)*init[j], dp[j][i - 1] + (n - i + 1)*init[j + i - 1]); } } cout << dp[1][n]; return 0; }
点赞 评论

相关推荐

点赞 评论 收藏
分享
牛客网
牛客企业服务