В условии дан граф, в котором у каждой вершины одно исходящее ребро.
Несложно заметить, что для того чтобы произвести требуемую в условии операцию, необходимо, чтобы ровно у одной вершины не было входящего ребра. Это понятно из следующего факта: если мы меняем выход у одной вершины, а вершин, у которых нет входящих ребер больше одной, то одна из них точно не будет принадлежать циклу.
Графы с такими ограничениями имеют вид цикла и одного входящего в него пути. И выход нужно поменять у вершины, принадлежащей циклу, в которую входит этот путь.
Отсюда следует решение. Найдем вершину, в которую не входи ни одного ребра. Пройдем n раз по ребрам: мы окажемся в вершине, в которую входит путь. Вернемся назад на одну вершину и изменим у нее выход на стартовую вершину.
Ответ «NO» будет лишь в том случае, если в результате обхода n вершин, мы посетили некоторые вершины дважды (кроме последнего n-го перехода, который должен вернуться в вершину цикла).