HDU 2159 FATE(二维背包)
来源:互联网 发布:知乎 大误 龙 编辑:程序博客网 时间:2024/06/05 04:10
思路:典型的二维背包题,第一次做,所以贴个代码
#include <stdio.h>
#include <string.h>
#define M 105
int f[M][M],a[M],b[M];
int n,m,k,s;
int max (int a ,int b)
{
return a> b ? a : b;
}
int dp ()
{
for (int rm= 1; rm <= m; rm ++)
for (int sm = 1; sm <= s; sm ++)
{
for (int i = 1; i <= k; i ++)
if (rm >= b[i])
f[rm][sm] = max (f[rm][sm],f[rm-b[i]][sm-1] + a[i]);
if (f[rm][sm] >=n) //经验值大于所要求的,返回退出
return m - rm;
}
return-1;
}
int main ()
{
while(~scanf("%d%d%d%d",&n,&m,&k,&s))
{
memset (f,0,sizeof(f));
for (int i = 1; i <= k; i ++)
scanf ("%d%d",&a[i],&b[i]);
printf ("%d\n",dp());
}
return0;
}
#include <stdio.h>
#include <string.h>
#define M 105
int
int n,m,k,s;
int max (int a ,int b)
{
}
int
{
}
int main ()
{
}
- HDU 2159 FATE(二维背包)
- hdu 2159 FATE 二维背包
- hdu 2159 FATE 二维背包
- HDU-2159 fate 二维背包
- hdu 2159 FATE 二维背包
- HDU 2159 FATE 二维背包
- hdu 2159 FATE 二维背包
- hdu 2159 FATE 二维背包
- hdu 2159 FATE 二维背包
- HDU-2159 FATE (二维背包)
- HDU 2159 FATE【二维背包+完全背包】
- hdu 2159 FATE(二维背包+完全背包)
- FATE hdu 2159 二维的完全背包
- hdu 2159 fate(二维完全背包)
- HDU 2159 FATE(二维完全背包)
- 【hdu 2159】 FATE 二维费用完全背包
- HDU 2159 FATE 二维费用背包
- hdu 2159 fate(二维完全背包)
- poj2886 Who Gets the Most Candie…
- poj 1459 power network(网络流 sa…
- poj 3013 Big Christmas Tree (解…
- HDU 4341 Gold miner(分组背包)
- HDU 2546 饭卡(01背包)
- HDU 2159 FATE(二维背包)
- poj 2446 Chessboard(二分图匹配)
- poj 2570 Fiber Network(floyd)
- C++ 程序员自信心曲线图
- Java栈和局部变量操作(一)
- poj 1386 Play on Words(欧拉回路…
- HDU 3397 Sequence operation(线段…
- poj 1325 Machine Schedule(匈牙…
- poj 1679 The Unique MST(kruskal)