完全背包 hiho一下第 7 周
来源:互联网 发布:mysql c语言接口 编辑:程序博客网 时间:2024/06/06 02:14
题意: 经典的完全背包问题,给出背包容量及物品体积,和 01 背包不同的是物品数量不限。
思路: 动态规划的问题可以先去想“如果得到了哪个子问题的答案,我就可以用它推出后面的问题”。试用到该经典问题上,如果我们知道了用 i 张奖券买这 N 个物品最多得到的喜好值为 best[i](i 从 0 到 j)。那么 best[j+1] 的值跟 best[j+1-need[0]]、best[j+1-need[1]]、best[j+1-need[2]]……有关系。可以写出状态转移式:
代码:
#include<cstdio>#include<cstring>#include<cstdlib>#include<stack>#include<queue>#include<utility>#include<vector>#include<cmath>#include<set>#include<map>#include<iostream>#include<algorithm>#include<sstream>using namespace std;typedef long long LL;int N, M;int need[510], value[510];int best[100010];int main(){ while(scanf("%d%d", &N, &M) == 2){ for(int i=0; i<N; i++){ scanf("%d%d", &need[i], &value[i]); } for(int i=0; i<=M; i++){ int tmp = 0; for(int j=0; j<N; j++){ if(i < need[j]) continue; tmp = max(tmp, best[i-need[j]]+value[j]); } best[i] = tmp; } printf("%d\n", best[M]); } return 0;}
阅读全文
0 0
- 完全背包 hiho一下第 7 周
- 01背包 hiho一下第 6 周
- hiho 7 完全背包
- hiho一下 第七周 Hihocoder #1043 : 完全背包
- hiho一下 第137周-建造基地(背包dp)
- hiho一下 第139周 《买零食》 多维01背包
- hiho第七周 完全背包
- hiho第七周--完全背包
- hiho一下 第143周 hiho密码
- hiho一下 第141周
- hiho一下 第139周
- hiho一下第143周
- hiho一下 第145周
- hiho一下 第167周
- hiho一下 第175周
- hiho一下 第174周
- HiHo --#1043 : 完全背包
- hiho刷题日记——第七天完全背包
- 基于SpringBoot+Hadoop+ElasticSearch+HBase的分布式检索系统
- MS-SQL异机备份恢复并最小化停机时间
- 2017云栖社区之星评选暨年度颁奖盛典_投票即可参与抽奖
- MySQL Group Replication 部署 (Single Master)
- HVX优化大尺寸Box Filter的行处理流程
- 完全背包 hiho一下第 7 周
- 在virtualbox中的两个Ubuntu16.04的ssh连接注意事项
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- CentOS上安装Node.js--v8.9.0
- DPM(Deformable Part Model)原理详解
- deep learning
- Qt函数quit(),exit()以及close()的区别
- 11月16日云栖精选夜读:阿里云 oss JavaScript客户端签名文件上传 vue2.0
- 弹窗组件layer学习笔记-open方法