题意:给定一张2×n的网格图,一开始矩阵所有相邻点之间有一条边
有q个询问,每次给出两个相邻的点的坐标,将其中的边删除或者添加,问如此操作之后整张图的割边数量
n,q<=2*10^5, 图始终保证联通
思路:From https://www.cnblogs.com/rpSebastian/p/7834027.html
首先可以发现不能成为割边的边,一定被某个环所包含。因此只要维护每个环的大小即可。
若某条横边在两行中均出现了两次,才有可能构成环。用set来维护所有连续的横边。再用线段树来维护所有竖边的位置。
计算一条连续的横边产生的不能成为割边的数量,统计其中最左和最右的竖边以及竖边的数量就行了。
STL什么的 自己能力还不够 实现等有空吧 先把大佬的思路贴过来