Kiểm Tra Từ Vựng

Đề bài

Mô tả

Bessie giúp Elsie ôn thi từ vựng. Bộ từ vựng gồm M từ phân biệt, không từ nào là tiền tố của từ khác.

Các từ được xây dựng theo cấu trúc cây: từ 0 là xâu rỗng, từ i (1iN) được tạo bằng cách nối thêm một ký tự vào từ pi. Bộ từ vựng chỉ gồm các từ là lá trong cây (không phải tiền tố của từ nào khác).

Bessie đọc lần lượt từng từ, mỗi từ đọc từng ký tự một từ trái sang phải. Elsie phải nhận diện từ đó sớm nhất có thể. Sau khi Elsie nhận ra một từ, từ đó (và mọi từ trung gian trên đường từ gốc đến nó) bị loại khỏi cây xét.

Với mỗi từ trong thứ tự đọc, hãy tính số ký tự Bessie cần đọc.

Dữ liệu vào

  • Dòng 1: Số nguyên N (1N2×106)
  • Dòng 2: N số nguyên p1,p2,,pN (0pi<i)
  • M dòng tiếp theo: Mỗi dòng chứa chỉ số của từ cần đọc (theo thứ tự)

Dữ liệu ra

  • M dòng, mỗi dòng là số ký tự Bessie cần đọc cho từ tương ứng.

Ràng buộc

  • 1N2×106

Ví dụ

Input Output Giải thích
5
0 1 2 3 4
5
0 Cây là đường thẳng, chỉ có từ 5 trong bộ. Elsie biết ngay từ đó mà không cần đọc ký tự nào.
4
0 0 1 1
4
3
2
2
1
0
Ba từ trong bộ: từ 2, 3, 4. Đọc từ 4 cần 2 ký tự (phân biệt với từ 3). Đọc từ 3 cần 1 ký tự. Đọc từ 2 cần 0 ký tự (chỉ còn lại một từ).

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0