动态规划.背包
文章平均质量分 50
liurui39660
这个作者很懒,什么都没留下…
展开
-
hdu 4508
hdu 4508 这个问题的核心就是下面最长的那个公式,额也写了很长(但没什么用)的注释,首先注意,这里运用了一下压缩的办法,原本这里是二重循环,因此这里也应该开二维数组,不过这个问题没有必要,只要在原有数据上动手即可,因此第一层循环只当是计数而已了。 那么再来详细看看这个公式,首先需要明白一个问题,每一次更新的数据(以没有压缩为例),都是在当时的情况下的最优解,因此该算法实质上相当于是最优解的转原创 2016-04-19 21:23:54 · 336 阅读 · 0 评论 -
hdu 2159
题目概述: 某人打游戏升级,还需a点经验,最大忍耐度b,怪有c种,各种杀怪合计不超过d个 每种怪有经验e和消耗忍耐度f两种属性(当然也有算1只怪的属性) 若在忍耐范围能升级,输出最多剩下多少忍耐度,否则输出-1 输入: 第一行是a,b,c,d,后面c行每行是e,f,多组数据到eof为止 输出: 每组数据一行,剩余的忍耐度或-1 样例输入: 10 10 1 10 1 1 10原创 2016-04-20 20:35:23 · 366 阅读 · 0 评论 -
hdu 2191
题目概述: 有times组数据 背包大小lim,有kind种物品 每种物品大小c,价值v,有n个 输入: 第一行times,下一行lim,kind,其后kind行,每行c,v,n,多组数据之间没有空行 输出: 每行一个数,包能装的最大价值 样例输入: 3 8 2 2 100 4 4 100 2 14 3 2 100 4 4 100 2 1 100 3 13原创 2016-04-21 16:45:33 · 339 阅读 · 0 评论 -
hdu 2602
题目概述: 有times组数据 物品有kind种,背包大小lim 每种物品只有一个,价值v,大小c 输入: 第一行times,下一行kind,lim,下一行有kind个数,是每种物品的价值,再下一行的kind个数是对应上一行物品的大小,多组数据之间没有空行 输出: 每行一个数,背包能装下的最大价值 样例输入: 1 5 10 1 2 3 4 5 5 4 3 2 1 样例输出原创 2016-04-20 22:56:06 · 265 阅读 · 0 评论 -
poj 1276
题目概述一个ATM机里有多种面额不同的货币,每种储量不同,有人要取钱时,会吐出尽可能多但不超过要取钱数的钱,给出要取钱数request,货币种数N,货币面额deno及储量num,问最多会吐出多少钱时限1000ms/3000ms输入每行第一个整数request,第二个整数N,其后2*N个整数 分别为num和deno,输入到EOF结束限制0<=N<=10;0<=num<=1000;1<=deno<=10原创 2016-07-25 16:34:42 · 300 阅读 · 0 评论 -
hdu 1203
题目概述一个人有N元,打算申请M个学校,每个学校申请费cost元,录取率value,求最大录取率时限1000ms/2000ms输入每组数据第一行两个正整数N,M,其后M行,每行一个正整数cost和一个正浮点数value,输入以N=M=0结束限制0<=N<=10000;0<=M<=10000输出每行一个浮点百分数和一个百分号,最大录取率,百分数精确到小数点后一位样例输入 10 3 4 0.1原创 2016-07-18 22:07:12 · 404 阅读 · 0 评论 -
hdu 2844
题目概述给定N种钱,每种面值v,数量n,问可凑出的总价值中有多少种在(0,M]范围之间时限1000ms/2000ms输入每组数据第一行两个正整数N,M,下一行前N个为正整数v,后N个为正整数n,面值与数量相互对应,输入以N=M=0结束限制1<=N<=100;M<=100000;1<=v<=100000;1<=n<=1000;输出每行一个数,范围内可凑出的总价值种类数样例输入 3 10 1原创 2016-07-19 21:43:47 · 445 阅读 · 0 评论