Bạn Tuyết, như cái tên của bạn, rất thích vẻ đẹp của các bông tuyết. Bạn có thể dành hàng giờ chỉ để ngắm chúng.
Khác với thế giới bình thường, nơi mà các bông tuyết đa phần có 6 nhánh với cấu trúc đối xứng và phức tạp; bông tuyết ở thế giới của bạn Tuyết có hình dạng là một cây (đồ thị vô hướng không có chu trình) gồm có \(n\) đỉnh, được đánh số từ \(1\) tới \(n\). Đỉnh của cây được đánh số \(1\).
Tuyết muốn chọn trọng tâm của một nhánh con (hay còn gọi là cây con) của bông tuyết để cân bằng. Tuy nhiên, bạn ấy chưa biết nên chọn nhánh con nào. Bạn được biết \(q\) lựa chọn nhánh con sơ bộ của Tuyết, hãy tìm một trọng tâm của từng nhánh con đó cho Tuyết nhé!
Ta gọi đỉnh \(u\) là tổ tiên của đỉnh \(v\), hay đỉnh \(v\) là hậu duệ của đỉnh \(u\), nếu trên đường đi trực tiếp từ đỉnh \(v\) đến gốc \(1\) có chứa đỉnh \(u\). Đỉnh \(u\) được gọi là cha của đỉnh \(v\) nếu \(u\) là tổ tiên của \(v\) và \(u\) kề \(v\).
Nhánh con của một đỉnh \(u\) bao gồm chính đỉnh \(u\) và các hậu duệ của đỉnh \(u\). Nhánh con cũng có hình dạng cây.
Trọng tâm của một cây (hoặc một nhánh con) là đỉnh mà nếu như xóa đỉnh đó đi khỏi cây, thì trong số các cây bị tách rời, cây lớn nhất có số đỉnh nhiều bằng nhiều nhất một nửa số đỉnh của cây (hoặc nhánh con) ban đầu.
Input
- Dòng đầu tiên chứa hai số \(n\) và \(q\) \((2 \leq n \leq 5 \times 10^{5}, 1 \leq q \leq 5 \times 10^{5})\) - số đỉnh của bông tuyết, và số nhánh con trong danh sách sơ bộ của Tuyết.
- Dòng thứ hai chứa \(n - 1\) số \(p_{2}, p_{3}, \ldots, p_{n}\) \((1 \leq p_{i} \leq n\), với \(p_i\) cho biết chỉ số đỉnh cha của đỉnh \(i\).
- \(q\) dòng tiếp theo, mỗi dòng gồm một số duy nhất \(v_{i}\) \((1 \leq v_{i} \leq n)\), cho biết đỉnh đại diện cho nhánh con cần tìm trọng tâm.
Output
Với mỗi truy vấn, in ra một dòng chỉ số của đỉnh trọng tâm ứng với nhánh con của đỉnh được hỏi. Nếu có nhiều đỉnh thỏa mãn, in ra bất kỳ đáp án hợp lệ nào. Có thể đảm bảo rằng, mỗi nhánh con đều có ít nhất một đỉnh trọng tâm.
Scoring
- Subtask \(1\) (\(30\%\) số điểm): \(n, q \leq 500\)
- Subtask \(2\) (\(30\%\) số điểm): \(n, q \leq 5000\)
- Subtask \(3\) (\(20\%\) số điểm): \(n, q \leq 10^{5}\)
- Subtask \(4\) (\(20\%\) số điểm): không có ràng buộc gì thêm
Example
Test 1
Input
10 5
10 10 1 4 3 5 2 3 5
4
6
10
1
5
Output
10
6
3
10
10
Bình luận
bài này có trình chấm ngoài không ạ, vì code mình nộp ac mà vào lqdoj nộp wa
1 bình luận nữa