codevs 1048能量项链(区间DP)

来源:互联网 发布:网络摄像头软件app 编辑:程序博客网 时间:2024/05/16 16:11

这么短的能量项链!!!


代码在这:

#include <bits/stdc++.h>using namespace std;int s[2010];int dp[2010][2010];int main(){    int n;    int maxn=0;    scanf("%d",&n);        for(int i=1;i<=n;++i)        scanf("%d",&s[i]); s[i+n]=s[i];            for(int i=2*n-1;i;i--){        for(int j=i+1;j<=i+n;++j){            for(int k=i;k<j;++k)                dp[i][j]=max(dp[i][j],dp[i][k]+dp[k+1][j]+s[i]*s[k+1]*s[j+1]);        }    }        for(int i=1;i<=n;++i) maxn=max(maxn,dp[i][i+n-1]);        printf("%d\n",maxn);    return 0;}


0 0
原创粉丝点击