洛谷多维DP(5)P1855 榨取kkksc03——二维费用的背包问题

P1855 榨取kkksc03

在这里插入图片描述

输入输出样例

输入 #1复制
6 10 10
1 1
2 3 
3 2
2 5
5 2
4 3
输出 #1复制
4

总结目录

1 问题归类与状态方程的书写,对于恰好背包,非恰好背包的理解
2 对于三维DP的未优化的代码细节,结合基础题 “采药” 进行说明

1 问题归类与状态方程的书写

这题很明显是一个背包问题。但是特殊在于它是一个二维费用的背包问题,关于二维费用背包问题可见下面这个博客
https://www.kancloud.cn/kancloud/pack/70129
在本题中,背包的容量有2类,一个是金钱,一个是时间,因此每个物品的cost有2种。而物品的价值在这里没有发生改变,基本上是恒定为1的。

如果使用恰好背包,定义dp[i][j][k]为:考虑前i种物品,资源1小号恰好为j,资源2消耗恰好为k时候的方案中的价值最大值。此时
dp[i][j][k]=max { dp[i-1][j][k],dp[i - 1][m - list[i].money][t - list[i].time] + 1 };

如果使用非恰后背包,方程是一样的,定义dp[i][j][k]为:考虑前i种物品,资源1小号小于等于j&#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值