BZOJ 3514 Codechef MARCH14 GERALD07加强版
看题解才会的
如果加入一条边,它对答案是否有贡献取决于它是否与当前图形成环。
所以加入一条边时,它形成的环里面的最早加入的边cut掉,并且给它赋值位这个最早加入边的编号。在查询的时候,初始答案位 n ,一个边挤出去的边的编号如果小于 L,说明它必然不会成环,于是就对答案有-1的贡献,否则说明它加进去会形成环,对答案没有贡献。
这个编号存在主席树里面,就可以强制在线了。
plaintext
1 | #include<iostream> |