#Lutece3377. 图的坍缩
图的坍缩
Description
Natsuzora 是一位魔法师,他的能力是对物质进行操控。在众多种类的魔法中,他最擅长的是「物质坍缩魔法」。
Natsuzora 有一张魔法网,可用一个简单联通无向图来表示。现在,Natsuzora 需要将魔法网进行压缩以节省空间。Natsuzora 的每次施法可以选择一个结点 ,对 施以「物质坍缩魔法」。然后,结点 就会和与其直接相连的所有结点一起坍缩成一个点。这个点的编号依然为 ,且继承坍缩前所有结点的连边(坍缩后形成自环的除外)。直到整个魔法网仅剩下一个结点时,压缩操作就算完成。
Natsuzora 的魔法网很大,他需要尽快地完成压缩操作,但 Natsuzora 只擅长魔法,不擅长算法。因此,他向擅长算法的你求助,想要知道要压缩这张魔法网,至少需要多少次操作,并且构造出一种可行的方案。
Input
本题包含多组数据。第一行输入一个整数 (),表示数据组数。
对于每组数据,第一行输入两个整数 (),表示图的点数和边数。
接下来 行,每行两个整数 (),表示图中的一条连边。
数据保证 ,,给出的无向图联通且不包含重边和自环。
Output
对于每组数据,第一行输出一个整数 ,表示最大的操作次数。
接下来一行,输出 个整数 ,表示每次操作的结点编号。请务必注意每次坍缩时除了所选点 以外,与 直接相连的其它点的编号会失效。
Samples
1
7 7
1 3
2 3
3 4
4 6
5 6
4 7
6 7
2
3 6
Note
样例图示如下:
Resources
The 22nd UESTC Programming Contest Preliminary