![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
背包
文章平均质量分 60
_YAN
未来会变好的。
展开
-
hdu 2602 Bone Collector (01背包)
最简单的背包了! 你懂的! #include #include #define max(a,b) a>b?a:b int bb[100000]; int main() { int t,n,vv,v[5000],w[5000],i,j; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&vv); memset原创 2013-08-03 09:59:28 · 512 阅读 · 0 评论 -
hdu 2844 Coins (多重背包)
题意是给你几个数,再给你这几个数的可以用的个数,然后随机找几个数来累加, 让我算可以累加得到的数的种数! 解题思路:先将背包初始化为-1,再用多重背包计算,最后检索,若bb[i]==i,则说明i这个数是可以得到的!一个循环计算可以达到的数的个数,最后输出就好了! #include #define max(a,b) a>b?a:b int bb[500000原创 2013-08-03 10:51:44 · 609 阅读 · 0 评论 -
背包
以下内容全部摘自背包九讲:(好东西哟~) P01: 01背包问题 题目 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。 基本思路 这是最基础的背包问题,特点是:每种物品仅有一件,可以选择放或不放。 用子问题定义状态:即f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程便是转载 2013-08-03 11:01:11 · 615 阅读 · 0 评论 -
hdu 3732 Ahui Writes Word
我喜欢这道题的这一点!你懂?原创 2013-08-02 17:16:30 · 638 阅读 · 0 评论 -
hdu 1114 Piggy-Bank (01背包)
呼呼呼呼呼呼呼呼呼······················· ~!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~原创 2013-08-03 10:33:06 · 510 阅读 · 0 评论 -
hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (多重背包)
本题为背包题目! 我用两种方法解的!一种将转化为01背包! 另一种直接用多重背包! /*#include//01背包 #include #define max(a,b) a>b?a:b int bb[50000]; int main() { int n,v[5000],w[5000],i,j,q,t,r,a,b,c,m; scanf("%d",&t); whi原创 2013-08-03 09:52:16 · 934 阅读 · 0 评论 -
hdu 2546 饭卡(背包)
设饭卡余额为total 此题经分析 可以得出:要求选出一些饭菜 时消费量尽量接近total-5元 然后再买一个饭菜 以达到透支。。。 可以证明 最后买的那个饭菜是饭菜中价值最大的. 证明 设a1 a2 a3...an-1 an 为各饭菜的价格 设an的价格最大 设 sum=total-5 a1+a2+a3+...an-2+an-1+an=M a1+a2+a原创 2013-08-07 11:37:11 · 888 阅读 · 0 评论 -
poj 3260 The Fewest Coins(背包)
/*个人观点:真心觉得poj 的题要比hdu上的题经典!!!越来越这样认为了!!! 学长昨天也是这样的说的!!!看来赶明儿重心需要转移了!!!*/ 这题是多重背包题,很不错的,简单的变换一下就知道这题不错的!!! 佩服那些出题的大神!!!呵呵····· 多重背包模板:(模板刚打的还没检查错误与否) @1: #include #include #define max(a,b) a>b原创 2013-08-20 20:34:26 · 737 阅读 · 0 评论 -
poj 3211 Washing Clothes(背包)
很不错的01背包!!! 不过有点疑问!!!(注释) #include #include using namespace std; #define max(a,b) a>b?a:b struct node { char cl[50]; int a; }aa[200]; int cmp(node a,node b) { return strcmp(a.cl,b.cl原创 2013-08-20 18:25:00 · 771 阅读 · 0 评论