cojs 火龙果 解题报告

昨天晚上做了一发HNOI,感觉有很多新的idea

于是就选了一个出成题目辣

我们考虑暴力

暴力很明显是把这个图A<=D,B<=E的形态搞出来

之后处理相关的询问

这样我们会很容易得到正解:

我们对边按A排序之后分块,对于每一块相关的询问我们单独处理

不难发现之前块的边的A一定小于当前询问的A

那么我们把询问和之前块的边按B排序,可以用一个单调指针完成加边

对于一些合法的在块内的边我们对于每个询问暴力扫块内的边,将合法的加进去

在处理完这个询问之后再将这些边撤销

对于u-v的最小的最大的C我们可以采用LCT来维护

这样总时间复杂度O(m*sqrt(m)*log(n))

但是由于LCT常数太大,本人又不想成为辣鸡卡常出题人

于是就开了8s的时限

posted @ 2016-04-29 10:13  _Vertical  阅读(150)  评论(0编辑  收藏  举报