设为首页 加入收藏

TOP

hdu2844 Coins 多重背包
2015-07-24 05:53:13 来源: 作者: 【 】 浏览:2
Tags:hdu2844 Coins 多重 背包



#include 
  
   
#include 
   
     #include 
    
      #include 
     
       #include 
      
        #include 
       
         #include 
        
          #include 
          #define inf 0x3f3f3f3f #define ll __int64 using namespace std; int n,m,dp[100010],a[100010],c[1010]; void pack01(int cost,int w) { for(int i=m;i>=cost;i--) dp[i]=max(dp[i-cost]+w,dp[i]); } void packall(int cost,int w) { for(int i=cost;i<=m;i++) dp[i]=max(dp[i-cost]+w,dp[i]); } void multipack(int cost,int w,int cnt) { if(cost*cnt>=m)//体积乘以数量大于总体积,说明不能完全装完,相当于有无穷件,用完全背包 packall(cost,w); else //可以装完,用01背包 { int i=1; while(i
          
           

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇HDU 3118 Arbiter 判定奇圈 下一篇SDUT OJ 1124 飞越原野 (三维BFS..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: