eolymp
bolt
Try our new interface for solving problems
Problems

Связность графа

Связность графа

Дан граф, содержащий \textbf{N} вершин и \textbf{M} рёбер (\textbf{1} ≤ \textbf{N} ≤ \textbf{1000}, \textbf{1} ≤ \textbf{M} ≤ \textbf{7000}). Требуется найти наименьшее число рёбер и эти рёбра, которые нужно добавить, чтобы гарф стал связным. \InputFile Во входном файле записаны сначала числа \textbf{N} и \textbf{M}, затем идёт описание рёбер графа - \textbf{M} пар чисел, где каждая пара описывает начало и конец ребра. \OutputFile В первую строку вывести единственное число \textbf{K} - минимальное количество рёбер, которое нужно добавить. В следующих \textbf{K} строках выведите по \textbf{2} числа - начало и конец нового ребра.
Time limit 1 second
Memory limit 122.17 MiB
Input example #1
3 1
2 1
Output example #1
1
1 3