题库练习 Spanning Tree with Maximum Degree
← 上一题 下一题 →

A12384 | Spanning Tree with Maximum Degree

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

You are given an undirected unweighted connected graph consisting of $n$ vertices and $m$ edges. It is guaranteed that there are no self-loops or multiple edges in the given graph.

Your task is to find any spanning tree of this graph such that the maximum degree over all vertices is maximum possible. Recall that the degree of a vertex is the number of edges incident to it.

输入格式

The first line contains two integers $n$ and $m$ ( $2 \le n \le 2 \cdot 10^5$ , $n - 1 \le m \le min(2 \cdot 10^5, \frac{n(n-1)}{2})$ ) — the number of vertices and edges, respectively.

The following $m$ lines denote edges: edge $i$ is represented by a pair of integers $v_i$ , $u_i$ ( $1 \le v_i, u_i \le n$ , $u_i \ne v_i$ ), which are the indices of vertices connected by the edge. There are no loops or multiple edges in the given graph, i. e. for each pair ( $v_i, u_i$ ) there are no other pairs ( $v_i, u_i$ ) or ( $u_i, v_i$ ) in the list of edges, and for each pair $(v_i, u_i)$ the condition $v_i \ne u_i$ is satisfied.

输出格式

Print $n-1$ lines describing the edges of a spanning tree such that the maximum degree over all vertices is maximum possible. Make sure that the edges of the printed spanning tree form some subset of the input edges (order doesn't matter and edge $(v, u)$ is considered the same as the edge $(u, v)$ ).

If there are multiple possible answers, print any of them.

输入输出样例

输入 #1
5 5
1 2
2 3
3 5
4 3
1 5
输出 #1
3 5
2 1
3 2
3 4
输入 #2
4 6
1 2
1 3
1 4
2 3
2 4
3 4
输出 #2
4 1
1 2
1 3
输入 #3
8 9
1 2
2 3
2 5
1 6
3 4
6 5
4 5
2 7
5 8
输出 #3
3 2
2 5
8 5
6 1
2 7
1 2
3 4
C++ 编辑器
输入
输出