Trong một khu bảo tồn thiên nhiên, hệ thống các lối đi được mô hình hóa dưới dạng một cây gồm \(N\) đỉnh, đánh số từ \(1\) đến \(N\).
Mỗi cạnh của cây biểu diễn một lối đi hai chiều giữa hai khu vực.
Một người kiểm lâm bắt đầu hành trình của mình tại đỉnh \(1\).
Sau đó, anh ta lần lượt di chuyển tới các đỉnh \(a_1, a_2, \ldots, a_m\) theo đúng thứ tự đã cho.
Giữa hai đỉnh liên tiếp, người kiểm lâm luôn đi theo đường đi đơn duy nhất trong cây.
Mỗi lần người kiểm lâm đi qua một cạnh, số lần sử dụng của cạnh đó tăng thêm \(1\).
Sau khi hoàn thành việc di chuyển tới đỉnh \(a_i\), người kiểm lâm muốn biết:
Trong tất cả các cạnh của cây, cạnh nào đã được đi qua
nhiều lần nhất?
Yêu cầu:
Sau mỗi lần đến đỉnh \(a_i\), hãy in ra số lần đi qua lớn nhất trong các cạnh của cây tính đến thời điểm đó.
\InputFile
- Dòng đầu chứa hai số nguyên \(N\) và \(m\) (\(1 \le N, m \le 2 \cdot 10^5\)).
- \(N-1\) dòng tiếp theo, mỗi dòng chứa hai số \(u, v\) mô tả một cạnh của cây.
- Dòng cuối chứa \(m\) số nguyên \(a_1, a_2, \ldots, a_m\).
\OutputFile
- In ra \(m\) dòng, dòng thứ \(i\) là câu trả lời sau khi người kiểm lâm đã đến đỉnh \(a_i\).
\Scoring
- Có ít nhất \(40\%\) số điểm ứng với \(n, m \le 2000\).
Example
Test 1
Input
5 4
1 2
1 3
3 4
3 5
4 5 2 4
Output
1
2
2
3
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.