- Time limit: 1.00 s
- Memory limit: 512 MB
Haluat suorittaa n kurssia, joilla on tiettyjä riippuvuuksia muotoa "kurssi a tulee suorittaa ennen kurssia b".
Haluat suorittaa kurssit niin, että suoritat kurssin 1 mahdollisimman pian. Jos järjestyksiä on useita, valitset sen, jossa suoritat kurssin 2 mahdollisimman pian, jne. Missä järjestyksessä suoritat kurssit?
Syöte
Syötteen ensimmäisellä rivillä on kaksi kokonaislukua n ja m: kurssien määrä ja riippuvuuksien määrä. Kurssit on numeroitu 1,2,\dots,n.
Seuraavat m riviä kuvaavat riippuvuudet. Jokaisella rivillä on kaksi kokonaislukua a ja b: kurssi a tulee suorittaa ennen kurssia b.
Tuloste
Tulosta yksi rivi, jolla on n kokonaislukua: kurssien suoritusjärjestys. Voit olettaa, että ratkaisu on olemassa, jolloin se on myös yksikäsitteinen.
Rajat
- 1 \le n \le 2 \cdot 10^5
- 1 \le m \le 5 \cdot 10^5
- 1 \le a,b \le n
Esimerkki
Syöte:
4 2 2 1 2 3
Tuloste:
2 1 3 4