CSES - Round Trip II | Chuyến đi vòng tròn II

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1400 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Byteland có \(n\) thành phố và \(m\) chuyến bay. Nhiệm vụ của bạn là thiết kế một chuyến đi vòng tròn bắt đầu tại một thành phố, đi qua một hay nhiều thành phố khác, và cuối cùng quay lại thành phố bắt đầu. Tất cả thành phố trung gian trong lộ trình đều phải phân biệt.

Input

  • Dòng đầu vào đầu tiên có hai số nguyên \(n\)\(m\): số lượng thành phố và chuyến bay. Các thành phố được đánh số \(1, 2, \ldots, n\)
  • Sau đó, có \(m\) dòng mô tả các chuyến bay. Mỗi dòng có hai số nguyên \(a\)\(b\): có một chuyến bay từ thành phố \(a\) đến thành phố \(b\). Tất cả chuyến bay đều là chuyến bay một chiều từ một thành phố đến một thành phố khác

Constraints

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

Output

  • Đầu tiên in một số nguyên \(k\): số lượng thành phố trong lộ trình. Sau đó in \(k\) thành phố theo thứ tự mà chúng được thăm. Bạn có thể in bất kì lời giải hợp lệ nào
  • Nếu không có lời giải nào, in IMPOSSIBLE

Example

Test 1

Input
4 5
1 3
2 1
2 4
3 2
3 4
Output
4
2 1 3 2

Bình luận

Mới nhất
Tải bình luận...

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