首页 > 其他 > 详细

hdu4570

时间:2014-07-12 15:03:29      阅读:305      评论:0      收藏:0      [点我收藏+]
 1 #include <iostream>
 2 #define N 65
 3 using namespace std;
 4 
 5 const long long INF = 1LL<<50;
 6 long long dp[N][N],a[N];
 7 
 8 int main()
 9 {
10     int _;
11     cin>>_;
12     while(_--)
13     {
14         int n,i,j,k;
15         cin>>n;
16         for(i=0;i<n;i++)    cin>>a[i];
17         for(i=0;i<n;i++)
18             for(j=i;j<n;j++)
19                 if(j-i<20)  dp[i][j]=a[i]*(1<<(j-i+1));
20                 else        dp[i][j]=INF;
21         for(i=n-1;i>=0;i--)
22             for(j=n-1;j>=i;j--)
23                 for(k=i;k<j;k++)
24                     dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]);
25         cout<<dp[0][n-1]<<endl;
26     }
27     return 0;
28 }

 

hdu4570,布布扣,bubuko.com

hdu4570

原文:http://www.cnblogs.com/someblue/p/3839893.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!