HDOJ 2159 FATE
来源:互联网 发布:php广告联盟系统 编辑:程序博客网 时间:2024/06/03 16:36
题意:给出忍耐度和杀怪数量和升级所需经验,并且已知每只怪的经验和所需的忍耐值,求出是否能升级
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2159
思路:有忍耐度和杀怪数量两个限制条件,二维背包,并且每种怪物没有数量限制,完全背包,综合就是二维完全背包。状态转移方程为dp[j][l] = max ( dp[j][l], dp[j-num[i].b][l-1] + num[i].a )
注意点:没说怪物的数量,不能当做01背包
以下为AC代码:
Run IDSubmit TimeJudge StatusPro.IDExe.TimeExe.MemoryCode Len.LanguageAuthor123170172014-11-27 00:03:40Accepted215946MS440K1394 BG++luminous11#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <vector>#include <deque>#include <list>#include <cctype>#include <algorithm>#include <climits>#include <queue>#include <stack>#include <cmath>#include <set>#include <iomanip>#include <cstdlib>#include <ctime>using namespace std;struct node{ int a; int b;}num[105];int dp[105][105];int main(){ int m, n, s, k; while ( cin >> n >> m >> k >> s ) { for ( int i = 0; i < k; i ++ ) { cin >> num[i].a >> num[i].b; } memset ( dp, 0, sizeof ( dp ) ); for ( int i = 0; i < k; i ++ ) { for ( int j = num[i].b; j <= m; j ++ ) { for ( int l = 1; l <= s; l ++ ) { dp[j][l] = max ( dp[j][l], dp[j-num[i].b][l-1] + num[i].a ); } } } bool flag = 0; for ( int i = 0; i <= m && ! flag; i ++ ) { for ( int j = 0; j <= s && ! flag; j ++ ) { if ( dp[i][j] >= n ) { flag = 1; cout << m - i << endl; } } } if ( ! flag ) { cout << "-1" << 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)
- Ubuntu 14.04双显卡设备出现未知显示器解决方法
- STL string的关键函数
- 一起学汇编:搭建开发环境
- 提高 Linux 上 socket 性能
- 社区帖子anti-spam综述
- HDOJ 2159 FATE
- Linux中线程与CPU核的绑定
- UVA 12452 Plants vs. Zombies HD SP 树形dp(水
- 石子游戏
- 醉滋座左做状佐壮祖淄左做状佐壮
- 【MongoDB】MongoDB之八大优化技巧
- 網頁亂碼
- Java常见陷阱
- 赘尊子妆纵棕租做淄谞妆纵棕租做