luogu#P8436. 【模板】边双连通分量

【模板】边双连通分量

题目描述

对于一个 nn 个节点 mm 条无向边的图,请输出其边双连通分量的个数,并且输出每个边双连通分量。

输入格式

第一行,两个整数 nnmm

接下来 mm 行,每行两个整数 u,vu, v,表示一条无向边。

不保证图为简单图,图中可能有重边和自环。

输出格式

第一行一个整数 xx 表示边双连通分量的个数。

接下来的 xx 行,每行第一个数 aa 表示该分量结点个数,然后 aa 个数,描述一个边双连通分量。

你可以以任意顺序输出边双连通分量与边双连通分量内的结点。

5 8
1 3
2 4
4 3
1 2
4 5
5 1
2 4
1 1
1
5 1 5 4 2 3
5 3
1 2
2 3
1 3
3
3 1 3 2
1 4
1 5
6 5
1 3
2 4
1 2
4 6
2 3
4
3 1 2 3
1 4
1 5
1 6
7 8
1 3
2 4
3 5
2 5
6 4
2 5
6 3
2 7
3
1 1
5 2 5 3 6 4
1 7

提示

样例四解释:

相同颜色的点为同一个连通分量。


数据范围: 对于 100%100\% 的数据,1n5×1051 \le n \le 5 \times10 ^51m2×1061 \le m \le 2 \times 10^6

subtask nn mm 分值
11 1n1001 \le n \le 100 1m5001 \le m \le 500 2525
22 1n50001 \le n \le 5000 1m5×1041 \le m \le 5 \times 10^4
33 1n2×1051 \le n \le 2\times 10^5 1m5×1051 \le m \le 5\times 10^5
44 1n5×1051 \le n \le 5 \times10 ^5 1m2×1061 \le m \le 2 \times 10^6

数据更新

  • 2022/7/142022/7/14 加强数据
  • 2022/11/262022/11/26 新增 1010 组较小的数据(1n,m101\le n, m \le 10),方便选手调试。
  • 2022/12/312022/12/31 重组 subtasksubtask,并加入若干组极端数据。
  • 2023/1/12023/1/1 发现昨天新加入的数据数据出了问题,已修改。

本题不卡常,时间限制与空间限制均已开大,正确的解法均可通过。


惊喜:AC 后记得把鼠标放到测试点上看反馈信息,有惊喜哦。