[CSES 1702] Tree Traversals

Xem dạng PDF

Gửi bài giải


Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

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

  • Tiền thứ tự (Preorder): Duyệt gốc trước, sau đó duyệt cây con bên trái, và cuối cùng duyệt cây con bên phải.
  • Trung thứ tự (Inorder): Duyệt cây con bên trái trước, sau đó duyệt gốc, và cuối cùng duyệt cây con bên phải.
  • Hậu thứ tự (Postorder): Duyệt cây con bên trái trước, sau đó duyệt cây con bên phải, và cuối cùng duyệt gốc.

Cho một cây nhị phân gồm ~n~ đỉnh với các nhãn phân biệt. Bạn được cho thứ tự duyệt tiền thứ tự và trung thứ tự của cây, nhiệm vụ của bạn là xác định thứ tự duyệt hậu thứ tự của cây.

Dữ liệu vào

Dòng đầu tiên chứa một số nguyên ~n~: số lượng đỉnh. Các đỉnh được đánh số ~1,2,\dots,n~.

Sau đó là hai dòng mô tả thứ tự duyệt tiền thứ tự và trung thứ tự của cây. Cả hai dòng đều gồm ~n~ số nguyên.

Bạn có thể giả định rằng dữ liệu vào tương ứng với một cây nhị phân.

Kết quả

In ra thứ tự duyệt hậu thứ tự của cây.

Giới hạn

  • ~1 \le n \le 10^5~

Ví dụ

Dữ liệu vào:

5
5 3 2 1 4
3 5 1 2 4

Kết quả:

3 1 4 2 5

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.