Se da un graf orientat simplu cu n noduri si m muchii orientate. Determinati o ordine topologica a nodurilor folosind algoritmul lui Kahn, alegand la fiecare pas, dintre nodurile disponibile (grad de intrare 0), pe cel cu indicele cel mai mic.
- Date de intrare
- Pe prima linie se citesc n si m. Urmeaza m linii, fiecare cu doua numere x y, reprezentand o muchie orientata de la x catre y.
- Date de iesire
- Daca graful contine un ciclu (nu are ordine topologica), se afiseaza -1. Altfel, se afiseaza cele n noduri in ordinea topologica obtinuta, separate prin spatiu.
- Restrictii
- 1 <= n <= 100000, 0 <= m <= 200000
Exemple
Exemplul 1
Intrare
4 3 1 2 1 3 3 4
Iesire
1 2 3 4
Exemplul 2
Intrare
3 3 1 2 2 3 3 1
Iesire
-1

