首页 > 其他 > 详细

浅谈背包

时间:2015-08-03 18:53:30      阅读:85      评论:0      收藏:0      [点我收藏+]

1.01背包

for(int i=0; i<n; i++)

{

  for(int j=W; j>=w[i]; j--)  //从后向前更新

  {  

     if(dp[j]<dp[j-w[i]]+v[i])

        dp[j]=dp[j-w[i]]+v[i];

  }

}

若将背包装满 则初始化 dp[0] =0, dp[i] =-∞ i :1~W;

2.02完全背包

for(int i=0; i<n; i++)

{

  for(int j=w[i]; j>=W; j++)  //从前向后更新

  {  

     if(dp[j]<dp[j-w[i]]+v[i])

        dp[j]=dp[j-w[i]]+v[i];

  }

}

若将背包装满 则初始化 dp[0] =0, dp[i] =-∞ i :1~W;

 

浅谈背包

原文:http://www.cnblogs.com/program-ccc/p/4699916.html

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