区间dp求调
查看原帖
区间dp求调
653295
Alven1234楼主2024/7/25 09:09
#include <iostream>
#include <vector>
#include <cstring>
using namespace std;
const int N=2005;
int n,v[N],f[N][N];
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>v[i];
	}
	for(int len=1;len<=n;len++){
		for(int l=1,r=l+len-1;r<=n;l++,r++){
			int a=n-(r-l+1);
			f[l][r]=max(f[l-1][r]+v[l-1]*a,f[l][r+1]+v[r+1]*a);
		}
	}
	cout<<f[1][n];
	return 0;
}
2024/7/25 09:09
加载中...