摘要:
题意:给出t组数据 每组数据给出n和m,n代表商品个数,m代表你所拥有的钱,然后给出n个商品的价值 问你所能买到的最大件数,和对应的方案数。思路: 如果将物品的价格看做容量,将它的件数1看做价值的话,那么用01背包就可以求的花费m钱所能买到的最大件数dp[m]。 但是题目还要求方案数,因此很容易想到再建立一个数组f[j],存储j元钱能买dp[j]个物品的方案数。 在求解01背包的过程中,要分两种情况讨论: 设当前所选的物品为i 1. 若选了物品i后,能买的件数比不选物品i的件数大,即dp[j-val[i]... 阅读全文
posted @ 2013-12-07 10:52
辰曦~文若
阅读(613)
评论(0)
推荐(1)

浙公网安备 33010602011771号