CSES - Tree Traversals | Thứ tự duyệt cây

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: 1300 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Có ba cách phổ biến để duyệt qua các nút của cây nhị phân:

  • Duyệt tiền tự: đầu tiên xử lý gốc, sau đó đến cây con bên trái và cuối cùng là cây con bên phải.
  • Duyệt trung tự: đầu tiên xử lý cây con bên trái, sau đó đến gốc và cuối cùng là cây con bên phải.
  • Duyệt hậu tự: đầu tiên xử lý cây con bên trái, sau đó đến cây con bên phải và cuối cùng là gốc.

Cho một cây nhị phân gồm \(n\) nút với các nhãn khác nhau. Bạn được cung cấp đường đi theo cách duyệt tiền tự và duyệt trung tự. Nhiệm vụ của bạn là tìm ra đường đi theo cách duyệt hậu tự.

Input

  • Dòng đầu tiên gồm số nguyên \(n\): số lượng các nút. Các nút được đánh số \(1, 2,..., n\)
  • Hai dòng tiếp theo mô tả đường đi theo cách duyệt tiền tự và duyệt trung tự trên cây. Cả hai dòng bao gồm \(n\) số nguyên
  • Giả định rằng đầu vào tương ứng với một cây nhị phân

Constraints

  • \(1 \leq n \leq 10^5\)

Output

  • In ra đường đi theo cách duyệt hậu tự trên cây

Example

Test 1

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

Bình luận (1)

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