Submit solution
Points:
1.00
Time limit:
1.0s
Memory limit:
256M
Input:
stdin
Output:
stdout
Author:
Problem type
Cho đồ thị gồm n đỉnh đánh số từ 1, 2, ...n và m cạnh hai chiều nối các đỉnh.
Nhiệm vụ của bạn là cho biết khoảng cách ngắn nhất từ đỉnh 1 đến đỉnh n.
Khoảng cách giữa hai đỉnh là số đỉnh nằm trên đường đi của hai đỉnh đó.
Nếu từ đỉnh 1 không thể đến được đỉnh n thì in ra "IMPOSSIBLE"
Input
Dòng đầu tiên gồm 2 số n và m (~ 2 \le n \le 2.10^5 , 1 \le m \le 2.10^5 ~) - số đỉnh và số cạnh của đồ thị.
M dòng tiếp theo gồm 2 số u và v (~ 1 \le u, v \le n ~) - có cạnh hai chiều nối từ đỉnh u đến đỉnh v.
Output
Một dòng duy nhất là khoảng cách đường đi ngắn nhất từ 1 đến n.
Examples
Input
5 5
1 2
1 3
1 4
2 3
5 4
Output
3
*Giải thích: * Đường đi đó là 1->4->5 (lưu ý là đường đi từ 1 đến n)
Comments