1048 石子归并

来源:互联网 发布:淘宝卖家后台无法登陆 编辑:程序博客网 时间:2024/05/17 04:51

http://codevs.cn/problem/1048/

//1048 石子归并#include<cstdio>#include<cstring>#include<string>#define INF 0x3f3f3f3fusing namespace std;int n;int w[210];int c[210];int dp[210][210];int main(){    memset(dp,INF,sizeof(dp));    c[0]=0;    scanf("%d",&n);    for(int i=1;i<=n;i++)scanf("%d",&w[i]);    for(int i=1;i<=n;i++)c[i]=w[i]+c[i-1];    for(int i=1;i<=n;i++)dp[i][i]=0;    //  dp[i][i]=0  石子归并dp初始化赋为0     for(int l=2;l<=n;l++){        for(int i=1;i+l-1<=n;i++){            int j=i+l-1;            for(int k=i;k<j;k++){                dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]+c[j]-c[i-1]);            }        }    }    printf("%d\n",dp[1][n]);    return 0;}
0 0
原创粉丝点击