给你一个无向连通图,每次加一条边后,问图中桥的数目
两种解法:
1.求双连通分量,利用并查集缩点,形成一棵树,树边肯定都是桥,然后每对点x,y,找原图中x,y点对应的新图中的点,如果不是一个点,则向上找它们的LCA,因为它们之间连了一条边,所以这些点到它们的LCA之间的边都不是割边了,找LCA时,先将两点上升到同一层次,然后一起再向上找父亲节点,其间遇到桥就把桥的标记删除,并且答案减1
2.不缩点,直接在原图中找LCA,求桥时记录每个节点的父亲节点和层次,根据这两样信息,用解法1中的方法去找LCA
代码:
解法一
解法二