背包问题
ehi11
这个作者很懒,什么都没留下…
展开
-
I love sneakers! 分组背包DP
/*一道分组背包的题。比赛的时候循环顺序整反了。悲剧了。 f[i][j]=max(max(f[i][j],f[i-1][j-c[i][p]]+w[i][p]),f[i][j-c[i][p]]+w[i][p]); 表示取到前i个牌子时取到的最大的价值。而每个牌子必须至少取一次。每个物品最多取一次。 f[i][j], f[i][j-c[i][p]]+w[i][p] 保证在同一牌子内取或不取。 f[i-原创 2012-08-12 09:56:11 · 981 阅读 · 0 评论 -
多重背包的二进制优化 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活
/*今天刚看了背包九讲的多重背包优化,经典啊! 将n[i]件等值的物品用二进制转化为log(n)件物品,这个是个很大的优化, 具体的处理是对每一件物品的费用和价值也都乘上相应的二进制系数。*/ #include #include int p[101],c[101],h[101]; int dp[101]; int n; int max(int a,int b) { if(a>b) re原创 2012-11-28 23:49:22 · 1450 阅读 · 0 评论