HDU 4778 Gems Fight! 解题报告

39 篇文章 0 订阅

题目

题意:

有一些背包,每个包里有一些宝石,A和B两人轮流操作,每次可以选一个包,将里面的宝石都放到公用坩埚里。如果坩埚里有某种颜色宝石的数目不少于s个,那么每s个这种颜色的宝石可以变成一个魔法石。如果操作者选完包后能得到魔法石,则他可以再操作一次。每个人都是最优策略(宝石尽可能比对方多),且可操作的时候必须操作,求A最多可以比B多多少魔法石。

题解:

可以用状压来做,i为哪些包选了,j表示操作者是谁,dp[i][j]表示操作完后A比B最多多多少宝石,显然如果j表示A的时候dp[i][j]越大越好,否则越小越好。计算dp[i][j]时,可知当前公用坩埚里还有什么宝石,然后枚举选择哪个包,选择结果最优的那个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值