![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
背包问题
始之无
这个作者很懒,什么都没留下…
展开
-
hdu1864 最大报销额
解题思路:0/1背包 把实数转成整数,背包只适用整数,*100即可 可以报销的票,要么选,要么不选,且只能选一次。 不可报销的票:票价>1000,A、B、C类单项>600,注意,一张票可能A类出现不止一次。 0/1背包关键代码: for (int i=1; i=a[i]; --j) d[j] = max(d[j], d[j-a[i]]+a[i]); AC代码:原创 2013-06-15 23:29:06 · 398 阅读 · 0 评论 -
hdu1114 Piggy-Bank
解题思路:完全背包 注意要初始 d[0] = 0 AC代码: #include #include #include #include #include using namespace std; #define clr(p,v) memset(p,v,sizeof(p)) const int maxn = 10010 ; int n, m, C; int d[maxn原创 2013-06-16 23:32:23 · 458 阅读 · 0 评论 -
hdu2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
解题思路:多重背包 AC代码: #include #include #include #include #include using namespace std; #define clr(p,v) memset(p,v,sizeof(p)) const int maxn = 100010 ; int n, m, C; int d[110]; void zeroOnePa原创 2013-06-16 23:34:11 · 511 阅读 · 0 评论