EduBrick

B. Эйлеров путь в ориентированном графе

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

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

Формат ввода

В первой строке nn и mm (1≤n≤1051 \le n \le 10^5, 0≤m≤2⋅1050 \le m \le 2 \cdot 10^5). В каждой из следующих mm строк — ребро из aa в bb. Кратные рёбра и петли допустимы.

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

Если путь существует, в первой строке выведите mm, во второй — m+1m + 1 номер вершин в порядке посещения. Иначе выведите −1-1.

Примеры

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