午餐

受到国王游戏的启发,我们可以考虑当一个队伍的人定了之后,如何排序会最优

利用国王游戏的方法会发现是按照\(b\)数组递减排序

如果不交换,是\(max(a_i+b_i,a_i+a_{i+1}+b_{i+1})\),交换之后是\(max(a_{i+1}+b_{i+1},a_i+a_{i+1}+b_i)\)

我们有\(max(a_i+b_i,a_i+a_{i+1}+b_{i+1})≥max(a_{i+1}+b_{i+1},a_i+a_{i+1}+b_i)\)

由于\(a_i+b_i≤a_i+b_i+a_{i+1}\)\(a_{i+1}+b_{i+1}≤a_{i+1}+b_{i+1}+a_i\)

所以上面这个不等式等价于\(a_{i+1}+b_{i+1}+a_i≥a_i+a_{i+1}+b_i\),也就是\(b_{i+1}≥b_i\)

于是再利用DP考虑每一个人是在第一支队伍还是第二支队伍

这里重新做这道题目的时候,发现思路被陪审团给限制了,设置DP状态的时候一直在用维度表示一支队伍的状态,DP值表示另一只队伍的状态;这道题目给我们的启示就是,我们也可以同时用维度表示两只队伍的状态,DP值也同时表示两支队伍的状态

然而,像陪审团这道题目,可不可以用一维来表示两支队伍的时间差值呢?想一下不太清楚

posted @ 2024-01-26 23:20  最爱丁珰  阅读(2)  评论(0编辑  收藏  举报