#P9165. 三边连通分量(Three-Edge-Connected Components)

三边连通分量(Three-Edge-Connected Components)

三边连通分量(Three-Edge-Connected Components)

问题描述

给定一个含 N N 个顶点、M M 条边的无向图(可能含重边),请将其分解为三边连通分量(3-edge-connected components),即:
极大子图,使得任意两点间存在至少三条边不相交的路径(等价于:删除任意两条边后子图仍连通)。

约束条件

  • 1N2×105 1 \leq N \leq 2 \times 10^5
  • 1M2×105 1 \leq M \leq 2 \times 10^5
  • 0ai,bi<N 0 \leq a_i, b_i < N

输入格式

N MN\ M
a0 b0a_0\ b_0
a1 b1a_1\ b_1
:
aM1 bM1a_{M-1}\ b_{M-1}

输出格式

KK
l0 v0,0 v0,1  v0,l01l_0\ v_{0,0}\ v_{0,1}\ \dots\ v_{0,l_0-1}
l1 v1,0 v1,1  v1,l11l_1\ v_{1,0}\ v_{1,1}\ \dots\ v_{1,l_1-1}
:
lK1 vK1,0  vK1,lK11l_{K-1}\ v_{K-1,0}\ \dots\ v_{K-1,l_{K-1}-1}

其中:

  • K K 为三边连通分量的数量;
  • 每行第一个数 l l 是该分量的顶点数;
  • 后续 l l 个数是该分量中的顶点编号(顺序任意);
  • 若存在多解,输出任意一种即可。
4 5
0 2
0 1
3 0
2 1
2 3
3
2 0 2
1 1
1 3
13 21
4 5
8 7
12 3
3 10
1 5
10 2
0 0
11 4
2 12
9 1
9 0
7 8
7 6
9 1
8 2
12 10
11 0
8 6
3 2
5 9
4 11
6
1 0
3 1 9 5
4 2 12 3 10
2 4 11
1 6
2 7 8