hdu2159专题

hdu2159(二维背包)

这是我的第一道二维背包题,没想到自己一下子就A了,但是代码写的比较乱,下面的代码是我有重新修改的 状态转移:dp[i][j] = max(dp[i][j], dp[i-1][j-c[z]]+v[z]); 其中dp[i][j]表示,打了i个怪物,消耗j的耐力值,所得到的最大经验值 代码如下: #include<iostream>#include<algorithm>#include<

hdu2159 二维完全背包

如题http://acm.hdu.edu.cn/showproblem.php?pid=2159        第一次遇到多维的背包,其实只是多种因素同时限制最终背包值。     比如这一题,二维,加一重循环并找准上一层的状态就行了。代码一看就能会。 #include<iostream> #include<cstring> #include<cstdio> using nam

HDU2159 FATE

Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装备,xhd在不停的杀怪做任务。久而久之xhd开始对杀怪产生的厌恶感,但又不得不通过杀怪来升完这最后一级。现在的问题是,xhd升掉最后一级还需n的经验值,xhd还留有m的忍耐度,每杀一个怪xhd会得到相应的经验,并减掉相应的忍耐度。当忍耐度降到0或者0以下时,xhd就不会玩这游戏。xhd还说了他最

HDU2159 FATE【二维费用背包+完全背包】

FATE Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 19336    Accepted Submission(s): 9093   Problem Description 最近xhd正在玩一款叫做FATE的游戏,为了得到极品装

hdu2159“FATE”完全背包

hdu2159“FATE”完全背包 一、什么是完全背包 有这样一个问题: 在你面前放着n种宝石,每种宝石重量为wi,价值为vi,数量无限;你有一个最多可以放m重量的背包。现在你想在不超重的情况下,是你带走的宝石价值最大,问最大价值是多少? 在这里,“完全”是指每一种宝石都有无数个,不是指背包能装多少物品(不是背包的属性)。 dp用于保存背包的状态S(有某些必要的维度,如容量等) 注意:在某