Submit solution
Points:
0.43 (partial)
Time limit:
0.38s
Memory limit:
512M
Input:
stdin
Output:
stdout
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch
Cây nhị phân là cây mà mỗi nút có tối đa ~2~ con, thường được gọi là con trái và con phải. ~3~ phép duyệt cây nhị phân thông thường là tiền thứ tự (preorder), trung thứ tự (inorder) và hậu thứ tự (postorder):
- Duyệt tiền thứ tự cây gốc ~A~: thăm gốc ~A~, thăm cây con trái của ~A~, thăm cây con phải của ~A~.
- Duyệt trung thứ tự cây gốc ~A~: thăm cây con trái của ~A~, thăm gốc ~A~, thăm cây con phải của ~A~.
- Duyệt hậu thứ tự cây gốc ~A~: thăm cây con trái của ~A~, thăm cây con phải của ~A~, thăm gốc ~A~.
Cho danh sách duyệt tiền thứ tự và trung thứ tự của ~1~ cây nhị phân ~N~ đỉnh, các đỉnh được đánh số từ ~1~ đến ~N~.
Yêu cầu hãy xây dựng lại cây và in ra danh sách duyệt hậu thứ tự.
Input
- Dòng đầu ghi số ~N~ là số đỉnh ~(N \le 50 000~, ~40\%~ số test ~N \le 1000)~.
- Dòng thứ hai ghi ~N~ số là danh sách duyệt preorder.
- Dòng thứ ba ghi ~N~ số là danh sách duyệt inorder.
Output
- In ra ~N~ số là danh sách duyệt postorder của cây.
Sample Input
6
1 5 3 4 6 2
5 1 4 6 3 2
Sample Output
5 6 4 2 3 1
Note
Tham khảo thêm tạiđây
Comments