专栏文章

题解:P11467 网瘾竞赛篇之 generals 大法好

P11467题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miqodmaq
此快照首次捕获于
2025/12/04 08:05
3 个月前
此快照最后确认于
2025/12/04 08:05
3 个月前
查看原文
这里是官方题解。
因为占领每个城堡所产生的收益是相同的,所以最优情况下一定是按照 aia_i 从小到大的顺序占领城堡。
假设最终兵力超过对方时,t1e 已经额外占领了 pp 座城堡,那么这 pp 座城堡一定是越早占领,产生的收益越多。
有了以上两个结论,我们可以先将 aia_i 从小到大排序,设 fif_i 代表额外占领 ii 座城堡所需要的最小回合数,gig_i 代表额外占领第 ii 座城堡时剩余的总兵力,那么可以推出如下的状态转移方程:
fi=fi1+max(0,aigi1x+i1)+1gi=gi1+(x+i1)×aigi1x+i1ai\begin{aligned} f_{i} &= f_{i - 1} + \max\left(0, \left\lceil\frac{a_{i} - g_{i - 1}}{x + i - 1}\right\rceil\right) + 1 \\ g_{i} &= g_{i - 1} + (x + i - 1) \times \left\lceil\frac{a_{i} - g_{i - 1}}{x + i - 1}\right\rceil - a_i \end{aligned}
对于所有 ii,求出额外占领 ii 座城堡后,总兵力超过对方所需要的最小总回合数,求最小值即为答案。
需要额外判断,如果将所有城堡全部占领后,兵力增长速度仍然不比对手快,即 x+nyx + n \le y 时,兵力永远不会超过对方。

评论

0 条评论,欢迎与作者交流。

正在加载评论...