EduBrick

A. Эйлеров путь

3000 мс · 256 МБ · всё или ничего

Дан неориентированный граф. Определите, существует ли путь, проходящий по каждому ребру ровно один раз, и если да — выведите его.

Граф может содержать кратные рёбра, петель нет. Граф может быть несвязным.

Формат ввода

В первой строке nn (1≤n≤1051 \le n \le 10^5). Далее nn строк: в ii-й сначала mim_i — количество рёбер, инцидентных вершине ii, затем mim_i номеров вершин. Суммарное количество рёбер не превосходит 2⋅1052 \cdot 10^5; петель нет.

Формат вывода

Если путь существует, в первой строке выведите kk — количество рёбер в маршруте, во второй — k+1k + 1 номер вершин в порядке посещения.

Если пути нет, выведите −1-1. Если решений несколько, выведите любое.

Примеры

ввод
4
2 2 2
4 1 4 3 1
2 2 4
2 3 2
вывод
5
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.