Bài toán Cuốn sách phép thuật

View as PDF

Submit solution

Points: 200.00 (partial)
Time limit: 1.0s
Memory limit: 1G
Input: stdin
Output: stdout

Author:
Problem type
Allowed languages
C, C++, GAS64, Pascal, Perl, PHP, Python, Sed, TCL, Text

Harry đã biết về một cuốn sách dạy phép thuật được cha mẹ mình giấu trong một khu đầm lầy. Khu đầm lầy này có ~𝑁~ khu dân cư được đánh số thứ tự từ ~1~ đến ~N~ và được nối với nhau bởi ~𝑁 – 1~ con đường, trong đó mọi cặp khu dân cư đều có đường đi đến nhau.

Khoảng cách giữa 2 khu định cư ~(𝑥,𝑦)~ được hiểu là số lượng con đường đi qua để đi từ ~𝑥~ đến ~𝑦~. Harry biết rằng cuốn sách được giấu tại một khu dân cư nào đó, và nó có một sức mạnh quyền năng sẽ làm ảnh hưởng xấu tới những khu dân cư khác (làm cho khu các dân cư này xuất hiện bóng ma hoặc người sói) cách khu dân cư chứa cuốn sách trong vòng bán kính có khoảng cách là ~𝑑~.

Harry có trong tay một danh sách ~𝑀~ khu dân cư bị ảnh hưởng bởi cuốn sách, đó là các khu dân cư ~𝑝_1~,~𝑝_2~,…,~𝑝_𝑀~.

Yêu cầu: Hãy giúp Harry xác định xem có bao nhiêu khu dân cư có thể chứa cuốn sách mà anh cần tìm.

Dữ liệu:

  • Dòng đầu tiên chứa 3 số nguyên ~𝑁,𝑀~ và ~𝑑~ ~(1≤ 𝑀≤𝑁~ ≤ ~10^5~; ~0≤𝑑≤𝑁− 1~)
  • Dòng thứ hai chứa ~𝑀~ số nguyên ~𝑝_1~,~𝑝_2~,…,~𝑝_𝑀~ ~(1 ≤~ ~𝑝_𝑖~ ≤ ~𝑁~)
  • ~𝑁 – 1~ dòng tiếp theo, mỗi dòng chứa cặp ~𝑥,𝑦~ thể hiện một con đường nối trực tiếp từ ~𝑥~ đến ~𝑦~.

Kết quả:

  • Đưa ra số lượng khu đầm lầy có thể chứa cuốn sách phép thuật, nếu như không có thì đưa ra số ~0~.
Ví dụ:
INPUT
6 2 3
1 2
1 5
2 3
3 4
4 5
5 6
OUTPUT
3

Ràng buộc:

  • Có 25% số test tương ứng 25% số điểm có ~N ≤ 50~
  • Có 25% số test khác tương ứng 25% số điểm có ~50 < 𝑁 ≤ 100~
  • Có 25% số test khác tương ứng 25% số điểm có ~100 < 𝑁 ≤ ~5~.~10^4~
  • 25% số test còn lại tương ứng 25% số điểm có ~5~.~10^4~ < ~𝑁~ ≤ ~10^5~

Comments

Please read the guidelines before commenting.


There are no comments at the moment.