摘要: "Portal" 可以简单发现, 经过一条边的路径条数就是这条边左边的点数乘以右边的点数。 那么就只要动态维护一棵树两边的点的 就可以了。 那么就用$整体的点数 子树的点数$就是另外一部分的点数。 在LCT上,儿子有左儿子,右儿子和虚儿子之分。 那么我们在维护的时候就分类讨论一下就可以了。 注意到只 阅读全文
posted @ 2018-12-14 19:09 Qrsikno 阅读(113) 评论(0) 推荐(0) 编辑
摘要: "Portal" 要求维护一个可以支持断开树边的并查集。 $$ n using namespace std; define rep(i, a, b) for(int i = (a), i _end_ = (b); i = i _end_; i) define clar(a, b) memset((a 阅读全文
posted @ 2018-12-14 18:54 Qrsikno 阅读(140) 评论(0) 推荐(0) 编辑