急!灾区的食物依然短缺! 
为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买。 
请问:你用有限的资金最多能采购多少公斤粮食呢?

后记: 
人生是一个充满了变数的生命过程,天灾、人祸、病痛是我们生命历程中不可预知的威胁。 
月有阴晴圆缺,人有旦夕祸福,未来对于我们而言是一个未知数。那么,我们要做的就应该是珍惜现在,感恩生活—— 
感谢父母,他们给予我们生命,抚养我们成人; 
感谢老师,他们授给我们知识,教我们做人 
感谢朋友,他们让我们感受到世界的温暖; 
感谢对手,他们令我们不断进取、努力。 
同样,我们也要感谢痛苦与艰辛带给我们的财富~

Input

输入数据首先包含一个正整数C,表示有C组测试用例,每组测试用例的第一行是两个整数n和m(1<=n<=100, 1<=m<=100),分别表示经费的金额和大米的种类,然后是m行数据,每行包含3个数p,h和c(1<=p<=20,1<=h<=200,1<=c<=20),分别表示每袋的价格、每袋的重量以及对应种类大米的袋数。

Output

对于每组测试数据,请输出能够购买大米的最多重量,你可以假设经费买不光所有的大米,并且经费你可以不用完。每个实例的输出占一行。

Sample Input

1
8 2
2 100 4
4 100 2

Sample Output

400

思路:这是一个背包问题,需要注意的是,每件商品既不是只买一个(传统背包问题),也不是可以买任意多个(完全背包问题),而是每种商品的购买数量是有限制的,在这里用三层for循环,i是商品种类,j是余额,k是每件商品买的个数,然后用递推关系dp[i+1][j]=max(dp[i+1][j],dp[i][j-k*w[i]]+k*v[i]),即可,代码如下:

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
int v[110],w[110],s[110],dp[110][110];
int main()
{int t,n,m,i,j,k;scanf("%d",&t);while(t--){memset(dp,0,sizeof(dp));scanf("%d%d",&m,&n);for(i=0; i<n; i++)scanf("%d%d%d",&w[i],&v[i],&s[i]);for(i=0; i<n; i++){for(j=0; j<=m; j++){for(k=0;w[i]*k<=j&&k<=s[i];k++)dp[i+1][j]=max(dp[i+1][j],dp[i][j-k*w[i]]+k*v[i]);}}printf("%d\n",dp[n][m]);}
}

H - 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活相关推荐

  1. H - 悼念512汶川大地震遇难同胞——一定要记住我爱你

    H - 悼念512汶川大地震遇难同胞--一定要记住我爱你 题目描述 当抢救人员发现她的时候,她已经死了,是被垮塌下来的房子压死的,透过那一堆废墟的的间隙可以看到她死亡的姿势,双膝跪着,整个上身向前匍匐 ...

  2. hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (背包问题)

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/ ...

  3. HDU2191——悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  4. [HDU 2191] 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  5. 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 HDU - 2191(特殊01背包)

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 HDU - 2191 急!灾区的食物依然短缺! 为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市 ...

  6. 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 dp

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Jav ...

  7. 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    这里写链接内容 悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ...

  8. HDU - 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    悼念512汶川大地震遇难同胞--珍惜现在,感恩生活 HDU - 2191 AYIT-2021 609暑假集训第一周下 记忆化搜索和背包 急!灾区的食物依然短缺! 为了挽救灾区同胞的生命,心系灾区同胞的 ...

  9. hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2191 题意:标准的多重背包,由于数据量较小,可转化为0-1背包. /*悼念512汶川大地震遇难同胞-- ...

最新文章

  1. 【LInux】查看Linux系统版本信息
  2. animateWithDuration:animations:completion:
  3. 剑指offer(26-33题)详解
  4. 无服务器架构_如何开始使用无服务器架构
  5. linux php 上级目录,Linux目录架构详解_php
  6. C++ 中 freopen()函数的用法
  7. mysql数据库,当数据类型是float时,查询居然查询不出数据来
  8. solr学习笔记-linux下配置solr
  9. 复盘:智能座舱系列文五- 它的3种交互方式之隐式交互
  10. C 语言字符数组的定义与初始化
  11. Java的反射机制?
  12. Java 2、8、16进制概述和由来
  13. 【Mendeley】参考文献中et al 的格式修改
  14. C盘清理——“C:\ProgramData\Package Cache“文件夹转移
  15. 入门推荐系统——矩阵分解
  16. guacamole 源码_guacamole实现上传下载
  17. 鸿蒙bate版下载安装,鸿蒙2.0 beta3开发者公测版
  18. 常见网络攻击之CC攻击防御手段,莫错过
  19. 招商头条:商务部2019年将推进自贸区自贸港建设;深圳去年减免税额2411亿元;西安3D打印特色小镇项目签约
  20. uTorrent局域网做种

热门文章

  1. 物联网的特点对行业的作用
  2. 马云:我说了很久的DT时代,你们明白了吗?
  3. 亚马逊listing产品和竞品的销量查询方法
  4. php爬取邮箱,SAS爬虫的简单应用-爬取帖子下的邮箱,给他们发一封邮件...
  5. 电脑qq浏览器怎么滚动截长图_Mac系统如何轻松实现网页长截图功能
  6. Fabric-跨链码访问
  7. 解决Bootstrap字体图标glyphicon无法显示的问题
  8. 串口服务器与无线网桥组合,网桥和无线网桥的概念及架设方案
  9. 明略数据SCOPA发布 开启大数据关联挖掘的新时代
  10. 浅谈使用CDN加速的OSS