#1615. Bảo toàn thứ tự lớp (TREEORDER)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho một cấu trúc cây vô hướng gồm n đỉnh được đánh số từ 1 đến n . Đỉnh 1 được xem là gốc của cấu trúc cây này. Khoảng cách giữa hai đỉnh bất kỳ là số cạnh trên đường đi đơn duy nhất nối giữa chúng.

Một dãy hoán vị A gồm n phần tử ( A_1, A_2, \dots, A_n ) của các đỉnh trên cây được gọi là có tính chất bảo toàn thứ tự lớp nếu nó thỏa mãn đồng thời hai điều kiện tiên quyết sau:

  1. Đỉnh đầu tiên của dãy phải là gốc: A_1 = 1 .
  2. Với mọi cặp đỉnh u v bất kỳ (khác đỉnh 1 ), gọi P(u) P(v) lần lượt là cha trực tiếp của u v trên cây. Nếu P(u) xuất hiện trước P(v) trong dãy A , thì u bắt buộc phải xuất hiện trước v trong dãy A . (Nếu P(u) \equiv P(v) , thứ tự giữa u v là tùy ý).

Cho cấu trúc cây và một dãy hoán vị A , hãy xác định xem dãy này có thỏa mãn tính chất bảo toàn thứ tự lớp hay không.

Dữ liệu:

  • Dòng đầu tiên chứa một số nguyên n ( 1 \le n \le 2 \cdot 10^5 ) biểu thị số lượng nút trong cây.
  • n - 1 dòng tiếp theo mô tả các cạnh của cây. Mỗi dòng chứa hai số nguyên x y ( 1 \le x, y \le n ) — các đầu mút của cạnh tương ứng. Đảm bảo rằng đồ thị đã cho là một cây.
  • Dòng cuối cùng chứa n số nguyên phân biệt a_1, a_2, \dots, a_n ( 1 \le a_i \le n ) — dãy cần kiểm tra.

Kết quả:

  • In ra "Yes" nếu dãy thỏa mãn tính chất đã nêu, và "No" nếu ngược lại.

Ví dụ:

Dữ liệu:

4
1 2
1 3
2 4
1 2 3 4

Kết quả:

Yes

Dữ liệu:

4
1 2
2 3
3 4
1 4 3 2

Kết quả:

No

Dữ liệu:

6
1 2
1 3
2 4
2 5
3 6
1 3 2 6 4 5

Kết quả:

Yes

Giải thích:

  • Trong ví dụ thứ nhất: Cha của 2 là 1, cha của 3 là 1, cha của 4 là 2. Vị trí các cha trong dãy lần lượt là pos[1]=1, pos[1]=1, pos[2]=2 . Dãy vị trí cha là \{1, 1, 2\} là dãy không giảm, nên thỏa mãn.
  • Trong ví dụ thứ hai: A_1=1 đúng. Nhưng xét u=4 (P(4)=3) v=3 (P(3)=2) . Trong dãy A , P(v)=2 đứng sau P(u)=3 nhưng v=3 lại đứng sau u=4 , vi phạm điều kiện thứ 2.

Giới hạn:

  • Subtask #1 (20% số điểm): n \le 200 .
  • Subtask #2 (30% số điểm): n \le 2000 .
  • Subtask #3 (20% số điểm): Cây có dạng hình sao (đỉnh 1 nối với tất cả các đỉnh còn lại).
  • Subtask #4 (30% số điểm): Không có ràng buộc gì thêm ( n \le 2 \cdot 10^5 ).