[WC2010]重建计划
瞎扯:首先一个显然的分数规划,再一个显然的点分治,然后我就只会数据结构维护,多一个 \(\log\)
正解:事实上把数据结构改成单调队列直接就过了。
[十二省联考 2019] 春节十二响
简单的树上启发式合并。
[WC2016]论战捆竹竿
[WC2007]剪刀石头布
考虑如果三个点不构成三元环,那么有且仅有一个点的出度为 \(2\)。于是容斥,最小化非三元环个数,即最小化每个点的出度选 \(2\)。
我们对每条边建一个点,若以确定方向则向出点连边,否则两边都连,这样就能确定一条边恰有一个出点。
对于每个点,我们差分地建边,由于函数是凸的,所以一定会先选前面的边,于是流出来一定是合法的。于是跑一遍费用流即可。