BZOJ 1015 - 变删点为加点 + 并查集维护
题意:给出一张无向图,每次删去其中一个点,每删一次就输出当前连通块的数量。
首先要明确一点:删去一个点,同时也删去了和这个点有关联的边集。但无论如何,删点并不好搞,所以我们可以考虑倒着来,加点,用并查集维护。具体来说,每次加上一个点xx,如果一个点是被第一次删去的(一个点可能被删去多次)(然而数据中并没有这种情况),那么就将连通块数加1;否则不考虑。然后依次添上它的每一条相邻边,并查集维护之即可。
原创
2016-01-07 18:45:03 ·
755 阅读 ·
0 评论