HDOJ-2159 FATE
来源:互联网 发布:锐捷mac版 编辑:程序博客网 时间:2024/06/05 17:03
这道题是二维费用的完全背包问题.两种费用支付的最大值分别为,忍耐度和最多杀怪数.
状态转移方程为: dp[j][h] = max(dp[j][h], dp[j-pa[i]][h-1] + expe[i]);
#include <iostream>#include <cstdio>#include <algorithm>#include <cstring>#include <vector>using namespace std;int dp[105][105];int expe[105], pa[105];int main(){ // freopen("in.txt", "r", stdin); int n, m, k, s; while(cin >> n >> m >> k >> s) { for(int i = 0; i < k; i++) cin >> expe[i] >> pa[i]; memset(dp, 0, sizeof(dp)); for(int i = 0; i < k; i++) for(int j = pa[i]; j <= m; j++) for(int h = 1; h <= s; h++) dp[j][h] = max(dp[j][h], dp[j-pa[i]][h-1] + expe[i]); int maxs = -1; for(int i = 0; i <= m; i++) for(int j = 0; j <= s; j++) { if(dp[i][j] >= n) maxs = max(maxs, m - i); } cout << maxs << endl; } return 0;}
0 0
- HDOJ 2159 FATE
- HDOJ 2159 FATE
- HDOJ-2159 FATE
- HDOJ 2159 FATE
- HDOJ-2159 FATE
- HDOJ 2159 FATE
- HDOJ 2159 FATE
- HDOJ 2159 FATE
- HDOJ 2159-FATE【完全背包】
- HDOJ 2159 FATE (二维背包)
- HDOJ 2159 FATE (二维完全背包)
- HDOJ 2159 FATE (二维多重背包)
- HDOJ FATE 二维DP
- HDOJ 题目2159FATE(二维完全背包)
- HDOJ 题目2159 FATE(二维多重背包)
- 暑期dp46道(35)--HDOJ 2159 FATE 背包问题
- HDOJ(HDU).2159 FATE (DP 带个数限制的完全背包)
- HDOJ 3646 Fate Stay Night (DP)
- Android性能优化典范
- Android onLowMemory()和onTrimMemory(...)调整运行过程中的内存消耗 <21>
- HEX和BIN文件的区别
- MWC世界移动通信大会
- Spring properties context:property-placeholder
- HDOJ-2159 FATE
- 动态创建script标签实现跨域资源访问的方法
- C++学习笔记:=操作符的重载实现
- Mongod参数说明
- C#实现PID控制的模拟测试和曲线绘图
- oracle后台进程
- Error Concealment in ffmpeg
- asp.net常用的javascript经典例子
- 结构体自引用