eolymp
Задачи

Поиск цикла

Поиск цикла

Лимит времени 1 секунда
Лимит использования памяти 128 MiB

Дан ориентированный невзвешенный граф. Необходимо определить есть ли в нём циклы, и если есть, то вывести любой из них.

Входные данные

В первой строке находятся два натуральных числа n и m (1n10^5, 1m10^5) - количество вершин и ребер в графе соответственно. Далее в m строках перечислены рёбра графа. Каждое задаётся парой чисел - номерами начальной и конечной вершин соответственно.

Выходные данные

Если в графе нет цикла, то вывести "NO", иначе вывести "YES" и затем перечислить вершины в порядке обхода цикла.

Пример

Входные данные #1
2 2
1 2
2 1
Выходные данные #1
YES
1 2
Входные данные #2
6 7
1 2
1 5
2 3
2 4
4 6
6 5
5 2
Выходные данные #2
YES
2 4 6 5
Источник ЛКШ-2011 Севастополь 08.08.2011 д.1 1-я лига