- 当一个题贪心和\(dp\)都可能,而又无法证明贪心假了,可以通过数据范围推测用什么,实在不行可以先尝试\(dp\),看看能否优化。
- 一个题中给的文字条件,可以先尝试将它转化为数学或计算机语言,这样可能会发现一些性质。
咱们举个例子CF1842A,
这题是个红题应该很简单(但我没做出来)
假设所选怪物的能力值分别为x 和 y
y,那么怪物的能力值将分别变为 x−y和y−x
如果任何怪物的能力值 ≤0,则该怪物死亡
这句话可变为
能力值变为\(x-min(x,y)\)和\(y-min(x,y)\)
由此,我们可以知道两方能力总值不变。
又由这句话
当至少一个玩家没有活着的怪物时,游戏结束。赢家是至少有一个怪物活着的玩家。
可知哪方能力总值先变为\(0\),他就输了。然后就很轻松了
- 当出现\(d[v]-d[u]\ge w\)时,可想到用最短路(这也是差分约束的想法)。(例子
(当然,你得先转化好题意)。