找啊找啊找GF 题解

具体题目及提交:http://www.rqnoj.cn/Problem_57.html

 

题目大意:

现在找GF需要花钱,花RP,还要花时间。现在有n个女孩,给出她们需要花费的钱,RP,时间。求出在保证mm最多的情况下用的时间最少。

 

这一题的时间是一个干扰条件。如果先不看时间,要你求出最多能搞到多少个mm,很明显的二维费用背包。现在多了个时间,但是它是不是多个费用呢?不是!

 

题目给我们的限制是只有一定的钱和rp,而对于时间只是说希望尽量少。所以时间并不影响我们往背包里放物品。而是在找的GF一样多的时候希望时间尽量的少。

 

看方程。F[i][a][b]表示前i个女孩,有a的钱和b的人品能够找到的最多的MM数量。C[i][a][b]表示前i个女孩,有a的钱和b的人品在保证找到的MM数量最多的情况下用的最少的时间。显然,C是依赖于F的。

 

F[i][a][b] = max{  F[i-1][a][b] , F[i-1][a-m[i]][b-r[i]] + 1 }

 

if( F[i-1][a][b] > F[i-1][a-m[i]][b-r[i]] + 1 )

    C[i][a][b] = C[i-1][a][b];

else if( F[i-1][a][b] < F[i-1][a-m[i]][b-r[i]] + 1 )

    C[i][a][b] = C[i-1][a-m[i]][b-r[i]] + time[i];

else

    C[i][a][b] = min{ C[i-1][a][b],C[i-1][a-m[i]][b-r[i]] + time[i] }

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值