CSES - Teleportit
  • Time limit: 1.00 s
  • Memory limit: 128 MB

Pelaat peliä, jossa on n tasoa sekä m teleporttia, joiden avulla voit liikkua tasolta toiselle. Voitat pelin, jos pääset tasolta 1 tasolle n niin että käytät tasan kerran jokaista teleporttia.

Tehtäväsi on selvittää, pystytkö voittamaan pelin, ja jos pystyt, mikä on yksi mahdollinen tapa kulkea teleporteissa.

Syöte

Syötteessä on ensin kaksi kokonaislukua n ja m: tasojen määrä ja teleporttien määrä. Tasot on numeroitu 1,2,\ldots,n.

Sitten syötteessä on m riviä, jotka kuvaavat teleportit. Jokaisella rivillä on kaksi kokonaislukua a ja b. Tämä tarkoittaa, että tasolta a pääsee teleportilla tasolle b. Kaikki teleportit ovat yksisuuntaisia.

Tuloste

Tulosta ensin "10-4", jos voit voittaa pelin, ja muuten "QAQ".

Jos voit voittaa pelin, tulosta vielä m+1 kokonaislukua, jotka kuvaavat, missä järjestyksessä siirryt tasolta toiselle.

Rajat

  • 2 \le n \le 10^5
  • 1 \le m \le 2 \cdot 10^5
  • 1 \le a,b \le n

Esimerkki

Syöte:

5 6
1 2
1 3
2 4
2 5
3 1
4 2

Tuloste:

10-4
1 3 1 2 4 2 5