PreVOI 2026 - Orterees
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Cho một cây có ~n~ ~(n \le 50000)~ đỉnh, mỗi đỉnh có ghi một giá trị không âm ~a_i~ ~(a_i \le 255)~. Các đỉnh được đánh số từ ~1~ đến ~n~. Đỉnh số ~1~ là gốc.
Cho ~q~ truy vấn có dạng ~x, i~ ~(i \le n, x \le 255)~. Với mỗi truy vấn, đếm số lượng đường đi đi qua đỉnh ~i~ mà phép toán OR của các giá trị ghi trên các đỉnh thuộc đường đi là ~x~.
Input
Dòng đầu tiên ghi ~2~ số ~n~ và ~q~.
Dòng thứ ~2~ ghi ~n~ số nguyên không âm ~a_1, a_2, \dots, a_n~.
Dòng thứ ~3~ mô tả cây ghi ~n-1~ số nguyên ~b_2, b_3, \dots, b_n~ với số ~b_i~ là số thứ tự của đỉnh là cha của nút ~i~. ~(b_i < i)~
Mỗi dòng trong ~q~ dòng tiếp theo ghi một truy vấn, có dạng ~x, i~.
Output
Với mỗi truy vấn, ghi ra trên một dòng kết quả phải tìm.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~10\%~ | ~n, q \le 200~ |
| 2 | ~10\%~ | ~a_i \le 15~ |
| 3 | ~15\%~ | Cây là đường thẳng |
| 4 | ~15\%~ | Với mọi query: ~x=a_i~ |
| 5 | ~20\%~ | Với mọi query, gọi ~j~ là cha của ~x~ thì ~a_j>i~ |
| 6 | ~30\%~ | Không có giới hạn gì thêm |
Sample Input 1
3 3
1 2 3
1 2
3 1
2 2
3 3
Sample Output 1
2
1
3
Bình luận