解题报告:hdu2191汶川地震 - 多重背包模板
2017-09-03 17:01:36
writer:pprp
这是一道多重背包裸题 - 记得是从右向左进行,还有几点需要注意啊,都在代码中表示出来了
代码如下:
/*
@theme:hdu2191 汶川地震
@writer:pprp
@begin:16:25
@end:16:59
@declare:多重背包问题
@error:方向是从左向右进行
@date:2017/9/3
*/ #include <bits/stdc++.h> using namespace std;
int M, N;//M money N kinds
const int maxn = ;
int w[maxn],v[maxn],num[maxn];
int dp[maxn*]; int main()
{
//freopen("in.txt","r",stdin);
int cas;
cin >> cas;
while(cas--)
{
memset(dp,,sizeof(dp));
cin >> M >> N;
for(int i = ; i <= N ; i++)
{
cin >> w[i] >> v[i] >> num[i];
} for(int i = ; i <= N; i++ )
{
for(int k = ; k <= num[i]; k++)//1、顺序无所谓
{
for(int j = M; j >= w[i] ; j--)//2、从右向左进行
{
dp[j] = max(dp[j],dp[j-w[i]]+v[i]);//3、由于已经有重复次数了,所以就没有必要做k*w[i]的工作了
}
}
}
cout << dp[M] << endl;
} return ;
}

解题报告:hdu2191汶川地震 - 多重背包模板的更多相关文章
- HDU 2191 珍惜现在,感恩生活(多重背包模板题)
		
多重背包模板题 #include<iostream> #include<cstring> #include<algorithm> using namespace s ...
 - 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活--hdu2191(多重背包模板)
		
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2191 标准的多重背包 题目 有N种物品和一个容量为V的背包.第i种物品最多有n[i]件可用,每件费用是 ...
 - HDU--2191 汶川地震购米(多重背包)
		
题目:http://acm.hdu.edu.cn/showproblem.php?pid=2191 分析:有资金n元,而市场有m种大米,每种大米价格不等,重量不等,数量不等, 并且只能整袋购买.如何用 ...
 - hdu2844Coins(多重背包模板)
		
Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
 - hdu2191 悼念512汶川大地震     ——多重背包
		
link:http://acm.hdu.edu.cn/showproblem.php?pid=2191 最简单的那种 #include <iostream> #include <cs ...
 - [51nod]多重背包模板
		
https://www.51nod.com/tutorial/course.html#!courseId=11 题目大意: 有$N$种物品和一个容量为$W$的背包.第$i$种物品最多有$c[i]$件可 ...
 - 【多重背包模板】poj 1014
		
#include <iostream> #include <stdio.h> #include <cstring> #define INF 100000000 us ...
 - 多重背包模板 51Nod 1086
		
有N种物品,每种物品的数量为C1,C2......Cn.从中任选若干件放在容量为W的背包里,每种物品的体积为W1,W2......Wn(Wi为整数),与之相对应的价值为P1,P2......Pn(Pi ...
 - 解题报告+板子:luogu P3387 【模板】缩点
		
题目链接:P3387 [模板]缩点 缩点板子,所谓\(dp\)就是拓扑排序(毕竟可以重走边),像\(SPFA\)一样松弛就好,就是重边极其烦人,还加了排序(绝对自己想的,然鹅拓扑的思路不是). 下面上 ...
 
随机推荐
- 网络编程 - socket通信/粘包/文件传输/udp - 总结
			
socket通信 1.简单的套接字通信 import socket phone = socket.socket(socket.AF_INET,socket.SOCK_STREAM) phone.bin ...
 - Jenkins部分常用插件
 - 7.Git工作区和暂存区
			
Git和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念. 先来看名词解释. 1.工作区(Working Directory) 就是你在电脑里能看到的目录,比如我的test文件夹就是一个工作区 ...
 - 华为交换机VRP用户界面配置及Telnet登录实验
			
user privilege level level 设置使用以上用户界面登录后的用户级别 5 acl acl-number { inbound | outbound } (可选)在用户界面上应用AC ...
 - Elasticsearch.js 发布 —— 在Node.js和浏览器中调用Elasticsearch(1)
			
继PHP.Ruby.Python和Perl之后,Elasticsearch最近发布了Elasticsearch.js,Elasticsearch的JavaScript客户端库.可以在Node.js和浏 ...
 - CanvasRenderingContext2D.imageSmoothingEnabled
			
https://developer.mozilla.org/zh-CN/docs/Web/API/CanvasRenderingContext2D/imageSmoothingEnabled 这是一个 ...
 - 【开发者笔记】java 利用jna调用c#的dll
			
一.需求阐述: 如果我们的项目利用c#开发,到了开发后期需要和java组进行合作,其中有一部分业务逻辑利用c#已经code completed,那么我们可能会考虑用java来调用现成的c#dll实现需 ...
 - R语言 dbWriteTable 写入数据库 为空和乱码问题
			
在windows环境下 用RMySQL 写入数据库中文数据为空 或者乱码问题. 找了下资料 一般情况是 用 insert 语句插入,结合现有业务有点麻烦,放弃了. 还有一种方式换平台,由于经常在win ...
 - nginx映射文件服务器文件夹
			
nginx映射文件服务器文件夹 普通用户A安装的nginx,yum源搭建文件服务器,新建普通用户B,其主目录是文件服务器需要访问的目录 普通用户A启动nginx无法访问B用户的文件服务器目录,提示40 ...
 - POJ2480:Longge's problem(欧拉函数的应用)
			
题目链接:传送门 题目需求: Given an integer N(1 < N < 2^31),you are to calculate ∑gcd(i, N) 1<=i <=N ...