#P15439. [蓝桥杯 2025 国 Python B] 连通块

    ID: 15374 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>2025广度优先搜索 BFS链表蓝桥杯国赛

[蓝桥杯 2025 国 Python B] 连通块

说明

给定一个 nn 个点的无向完全图,从中删去 mm 条边,问图中有多少个连通块。

输出连通块的数量,并输出每个连通块的具体情况。

输入格式

输入的第一行包含两个正整数 n,mn, m,用一个空格分隔,分别表示点数和边数。

接下来 mm 行,每行包含两个正整数 ui,viu_i, v_i,用一个空格分隔,表示删除 uiu_iviv_i 之间的边。保证同一条边不会被删除两次。

输出格式

输出的第一行包含一个整数 xx,表示连通块的数量。

接下来 xx 行,每行包含一个连通块的描述。其中第一个数 yy 表示该连通块的点数,接下来 yy 个数,依次表示其中每个点的编号,相邻整数之间使用一个空格分隔。连通块按其中最小结点的升序输出;每个连通块内的点按升序排列。

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

提示

评测用例规模与约定

对于 40%40\% 的评测用例,n1000n \le 1000

对于所有评测用例,1n,m2×1051 \le n, m \le 2 \times 10^5mn(n1)2m \le \dfrac{n(n-1)}{2}ui,viu_i, v_i1ui,vin1 \le u_i, v_i \le n