HDUOJ----1114(多重背包)悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 12605 Accepted Submission(s): 5315
为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买。
请问:你用有限的资金最多能采购多少公斤粮食呢?
后记:
人生是一个充满了变数的生命过程,天灾、人祸、病痛是我们生命历程中不可预知的威胁。
月有阴晴圆缺,人有旦夕祸福,未来对于我们而言是一个未知数。那么,我们要做的就应该是珍惜现在,感恩生活——
感谢父母,他们给予我们生命,抚养我们成人;
感谢老师,他们授给我们知识,教我们做人
感谢朋友,他们让我们感受到世界的温暖;
感谢对手,他们令我们不断进取、努力。
同样,我们也要感谢痛苦与艰辛带给我们的财富~
8 2
2 100 4
4 100 2
代码:
/*多重背包@coder Gxjun*/
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
const int maxn=;
int dp[maxn];
struct rice
{
int price;
int weight;
int kind;
};
rice sta[maxn]; int main( void )
{
int test,allkind,bag;
int i,j;
scanf("%d",&test);
while(test--)
{
scanf("%d%d",&bag,&allkind);
for(i=;i<allkind;i++)
scanf("%d%d%d",&sta[i].price,&sta[i].weight,&sta[i].kind);
memset(dp,,sizeof(dp));
for(i=;i<allkind;i++)
{
if(bag<=sta[i].price*sta[i].kind) //若果金钱买不玩该大米,这说明是可以等同于完全背包的
{
for(j=sta[i].price;j<=bag;j++)
{
if(dp[j]<dp[j-sta[i].price]+sta[i].weight)
dp[j]=dp[j-sta[i].price]+sta[i].weight;
}
}
else
{
//否者拆分为二进制,再用0/1进行处理
int k=;
while(sta[i].kind>k)
{
for(j=bag; j>=k*sta[i].price;j--)
{
if(dp[j]<dp[j-k*sta[i].price]+k*sta[i].weight)
dp[j]=dp[j-k*sta[i].price]+k*sta[i].weight;
}
sta[i].kind-=k;
k<<=;
}
for(j=bag; j>=sta[i].kind*sta[i].price;j--)
{
if(dp[j]<dp[j-sta[i].kind*sta[i].price]+sta[i].kind*sta[i].weight)
dp[j]=dp[j-sta[i].kind*sta[i].price]+sta[i].kind*sta[i].weight;
}
}
}
printf("%d\n",dp[bag]); }
return ;
}
HDUOJ----1114(多重背包)悼念512汶川大地震遇难同胞——珍惜现在,感恩生活的更多相关文章
- hdu 2191 多重背包 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
http://acm.hdu.edu.cn/showproblem.php?pid=2191 New~ 欢迎“热爱编程”的高考少年——报考杭州电子科技大学计算机学院关于2015年杭电ACM暑期集训队的 ...
- HDOJ(HDU).2191. 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活 (DP 多重背包+二进制优化)
HDOJ(HDU).2191. 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活 (DP 多重背包+二进制优化) 题意分析 首先C表示测试数据的组数,然后给出经费的金额和大米的种类.接着是每袋大米的 ...
- HDU 2191悼念512汶川大地震遇难同胞——珍惜如今,感恩生活(多重背包)
HDU 2191悼念512汶川大地震遇难同胞--珍惜如今.感恩生活(多重背包) http://acm.hdu.edu.cn/showproblem.php?pid=2191 题意: 如果你有资金n元, ...
- HDU2191_悼念512汶川大地震遇难同胞——珍惜如今,感恩生活(背包/多重背包)
解题报告 题目传送门 题意: 中文不多说; 思路: 基础多重背包,每一个物品有多个能够选.转换成01背包解. #include <iostream> #include <cstrin ...
- HDU2191悼念512汶川大地震遇难同胞——珍惜现在,感恩生活[多重背包]
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Jav ...
- 多重背包问题:悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(HDU 2191)(二进制优化)
悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 HDU 2191 一道裸的多重背包问题: #include<iostream> #include<algorithm> #i ...
- --hdu 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
解题思路: 多重背包:第 i 件物品有 j 个可用. 本题中 第 p[i] 类大米 有 c[i] 袋大米可买 ,故本题为多重背包. n(总钱数).m(种类) p[i] 单价 h[i] 重量 c[i] ...
- [原]hdu2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活 (这个只是题目名字) (多重背包)
本文出自:http://blog.csdn.net/svitter 原题:http://acm.hdu.edu.cn/showproblem.php?pid=2191 题意:多重背包问题.转换成为01 ...
- 多重背包之 HDU -1171Big Event in HDU &HDU -2191悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
这两道题都是多重背包的基础题,前面的安格题意是:给出每个物体的价值和物体的数量,如何分使得A,B所得价值最接近并且A的价值不能小于B,就类似于NYOJ上的那个邮票分你一半那个意思,只不过这里不是一个而 ...
随机推荐
- opencv编译Python接口
cmake-gui 配置 确认这些都正确 生成了CV2.so make install cv2.__version__ '3.0.0'
- C语言:字符串读取流读取文件中的数据
#include<stdio.h> int main() { //定义文件指针 FILE *f = NULL; //打开文件 f = fopen("1.txt",&qu ...
- go语言之进阶篇指针类型和普通类型的方法集
方法集 类型的方法集是指可以被该类型的值调用的所有方法的集合. 用实例实例 value 和 pointer 调用方法(含匿名字段)不受方法集约束,编译器编总是查找全部方法,并自动转换 receiver ...
- python 中面向对象编程的几个概念
Python super() 函数 super() 函数是用于调用父类(超类)的一个方法. super 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会 ...
- phpcms pc标签 start不生效的原因
start 和 page 参数不可同时使用,使用了page参数 会造成start 参数无效
- Android -- ShortCut
添加 添加快捷方式是向桌面应用(launcher)发送相关action的广播: public static final String ACTION_ADD_SHORTCUT = "com.a ...
- React Native for Android 热部署图片自己定义方案
情景 热部署时,我们期望升级包中包括js代码与图片资源. bundle的热部署网上已经有两种方案了,一种是用反射,一种是利用RN自带函数.将bundle初始化时直接放到指定文件夹下,之后通过替换bun ...
- 拼接多个 wchar_t *
/* wcscat example */ #include <wchar.h> int main () { wchar_t wcs[80]; wcscpy (wcs,L" ...
- wstring to wchar_t*
If you want to convert from std::wstring to const WCHAR* (i.e. the returned pointer gives read-onl ...
- MySQL监控主要指标及采集方法
MySQL监控属于DB监控的模块之一,包括采集.展示.监控告警.本文主要介绍MySQL监控的主要指标和采集方法. MySQL监控和Redis监控的逻辑类似,可参考文章<Redis监控主要指标及采 ...