CSES - Message Route | Đường truyền tin nhắn

Xem PDF

Điểm: 1200 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Mạng của Syrjälä có \(n\) máy tính và \(m\) kết nối. Nhiệm vụ của bạn là tìm hiểu xem Uolevi có thể gửi tin nhắn cho Maija hay không, và nếu có thể, số lượng máy tính tối thiểu trên một đường tuyền như vậy là bao nhiêu.

Input

  • Dòng đầu vào đầu tiên có hai số nguyên \(n\)\(m\): số lượng máy tính và kết nối. Các máy tính được đánh số \(1,2,\ldots,n\). Máy tính của Uolevi là \(1\) và máy tính của Maija là \(n\).
  • Sau đó, có \(m\) dòng mô tả các kết nối. Mỗi dòng có hai số nguyên \(a\)\(b\): có một kết nối giữa các máy tính đó.
  • Mỗi kết nối là giữa hai máy tính khác nhau và có nhiều nhất một kết nối giữa hai máy tính bất kỳ.

Output

  • Nếu có thể gửi tin nhắn, trước tiên hãy in \(k\): số lượng máy tính tối thiểu trên một đường truyền hợp lệ. Sau này, in một ví dụ về một đường truyền như vậy. Bạn có thể in bất kỳ giải pháp hợp lệ nào.
  • Nếu không có đường truyền, in IMPOSSIBLE.

Constraints

  • \(2 \leq n \leq 10 ^ 5\)
  • \(1 \leq m \leq 2 \cdot 10 ^ 5\)
  • \(1 \leq a, b \leq n\)

Example

Sample input

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

Sample output

3
1 4 5


Bình luận

Không có bình luận nào.