eolymp
bolt
Try our new interface for solving problems
Məsələlər

Обнаружение

Обнаружение

Дан ациклический ориентированный граф из \textbf{n }вершин и \textbf{k }рёбер. Требуется удалить из него максимальное количество рёбер, чтобы транзитивное замыкание графа не изменилось. Транзитивное замыкание графа \textbf{G }- граф \textbf{G'}, состоящий из множества вершин исходного графа \textbf{G }и множества рёбер (\textbf{u}, \textbf{v}) таких, что существует путь из вершины \textbf{u }в вершину \textbf{v }в графе \textbf{G}. \InputFile В первой строке находятся два числа \textbf{n }и \textbf{k} (\textbf{1} ≤ \textbf{n }≤ \textbf{50000}, \textbf{0 }≤ \textbf{k }≤ \textbf{50000}). Далее \textbf{k }строк, в каждой из которых по два целых числа \textbf{a_i} и \textbf{b_i}, означающих наличие ребра, ведущего из вершины \textbf{a_i} в \textbf{b_i} (\textbf{1 }≤ \textbf{a_i}, \textbf{b_\{i \}}≤ \textbf{n}). Граф не содержит петель, циклов и кратных рёбер. \OutputFile Вывести те рёбра, которые необходимо оставить в графе, в виде пар соединенных ими вершин. Рёбра можно выводить в любом порядке.
Zaman məhdudiyyəti 1 saniyə
Yaddaşı istafadə məhdudiyyəti 512 MiB
Giriş verilənləri #1
5 6
1 2
2 3
3 5
4 5
1 5
1 3
Çıxış verilənləri #1
1 2
2 3
3 5
4 5