Hành trình bay vòng

Xem dạng PDF

Mô tả bài toán: Thiết kế hành trình vòng tròn

Byteland có n thành phố và m chuyến bay. Nhiệm vụ của bạn là thiết kế một hành trình vòng tròn bắt đầu từ một thành phố, đi qua một hoặc nhiều thành phố khác, và quay trở lại thành phố ban đầu. Mỗi thành phố trung gian trong hành trình phải là duy nhất.


Input:

  • Dòng đầu tiên chứa hai số nguyên nm: số lượng thành phố và số lượng chuyến bay.
  • Sau đó, có m dòng, mỗi dòng chứa hai số nguyên ab:
    • ~a~: thành phố xuất phát của chuyến bay.
    • ~b~: thành phố đích của chuyến bay.
  • Các chuyến bay là một chiều.

Output:

  • Nếu tồn tại hành trình vòng tròn:
    • In ra một số nguyên k: số lượng thành phố trong hành trình vòng tròn.
    • In ra ~k~ số nguyên biểu diễn thứ tự các thành phố trên hành trình.
  • Nếu không có hành trình vòng tròn, in "IMPOSSIBLE".

Ràng buộc:

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

Ví dụ:

Input:
4 5
1 3
2 1
2 4
3 2
3 4
Output:
4
2 1 3 2
Input:
3 2
1 2
2 3
Output:
IMPOSSIBLE



Bình luận

Hãy đọc nội quy trước khi bình luận.

Không có bình luận tại thời điểm này.

Gửi bài giải
Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout
Nguồn bài: CSES
Dạng bài
CSES
Ngôn ngữ cho phép
C
C++
Java
Kotlin
Pascal
PyPy
Python
Scratch