最优卡组

最优卡组

参考:【LOJ6254】最优卡组

题解

我们可以先考虑堆模拟搜索。可以先将卡包内部排序,再用卡包的最大与次大排序。

我们用一个四元组(val,x,y,z)存储状态,val即当前的卡能量值,选择前x包卡,第x包选的是第y张牌。z表示是否它由下方的第2,3情况转来。

有如下几种情况:

1.当y< c_{x},则我们可选的情况有\left ( val+...,x,y+1,0 \right )

2.当x< n,则我们可选的情况有\left ( val+...,x+1,2,1 \right )

<
posted @ 2022-07-07 00:13  StaroForgin  阅读(20)  评论(0)    收藏  举报  来源