Se da un graf neorientat simplu cu n noduri si m muchii, si doua noduri a si b. Determinati un drum minim (cu numarul minim de muchii) intre a si b si afisati-l.
- Date de intrare
- Pe prima linie se citesc n si m. Urmeaza m linii cu cate o muchie. Pe ultima linie se citesc a si b.
- Date de iesire
- Daca exista drum, pe prima linie se afiseaza lungimea sa (numarul de muchii), iar pe a doua linie nodurile drumului, in ordine, separate prin spatiu. Daca nu exista drum, se afiseaza doar -1.
- Restrictii
- 1 <= n <= 100000, 0 <= m <= 200000
Exemple
Exemplul 1
Intrare
5 5 1 2 1 3 2 4 3 4 4 5 1 5
Iesire
3 1 2 4 5
Exemplul 2
Intrare
4 2 1 2 3 4 1 3
Iesire
-1

