【模板】点双连通分量

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

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

输入格式

第一行,两个整数 nnmm

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

输出格式

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

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

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

样例 #1

样例输入 #1

5 8
1 3
2 4
4 3
1 2
4 5
5 1
2 4
1 1

样例输出 #1

1
5 1 2 3 4 5

样例 #2

样例输入 #2

5 3
1 2
2 3
1 3

样例输出 #2

3
1 4
1 5
3 1 2 3

样例 #3

样例输入 #3

6 5
1 3
2 4
1 2
4 6
2 3

样例输出 #3

4
2 6 4
2 4 2
3 3 2 1
1 5

样例 #4

样例输入 #4

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

样例输出 #4

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

样例 #5

样例输入 #5

1 1
1 1

样例输出 #5

1
1 1

提示

样例四解释:

相同颜色的点为同一个分量里的结点。

温馨提示:请认真考虑孤立点与自环(样例五)的情况。


数据范围: 对于 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 后记得把鼠标放到测试点上看反馈信息,有惊喜哦。

北辰OI俱乐部算法提高班:图论专题

Not Claimed
Status
Done
Problem
23
Open Since
2023-11-25 0:00
Deadline
2024-12-31 23:59
Extension
24 hour(s)