Gửi bài giải
Điểm:
0,10
Giới hạn thời gian:
1.5s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Trong thành phố Q có n
khu dân cư được đánh số từ 1
tới n
. Các thành phố được kết nối với nhau thông qua các n - 1
tuyến đường 2 chiều
, đảm bảo các khu dân cư đến được với nhau thông qua các con đường.
Lãnh đạo thành phố Q xây bệnh viện ở 1 số khu dân cư để phục vụ nhu cầu khám chữa bệnh cho người dân. Có k
bệnh viện được xây ở k
khu dân cư, hãy giúp người dân xác định khoảng cách ngắn nhất tới bệnh viện gần nhất.
Định nghĩa khoảng cách ngắn nhất từ khu dân cư tới bệnh viện: Là số tuyến đường ít nhất để đi từ khu dân cư tới bệnh viện.
Yêu cầu: Bạn được cho t
truy vấn. Mỗi truy vấn bạn hãy xác định khoảng cách ngắn nhất của 1 khu dân cư tới bệnh viện gần nhất.
Dữ liệu vào:
- Dòng đầu tiên chứa ba số nguyên
n
,k
vàt
. - Dòng thứ hai gồm
k
số tự nhiên đôi một khác nhau a1, a2, ..., ak, tương ứng vớik
bệnh viện. n - 1
dòng tiếp theo, mỗi dòng gồm 2 số tự nhiênu
vàv
là tuyến đường nối giữa 2 thành phốu
vàv
.t
dòng tiếp theo, mỗi dòng gồm 1 số tự nhiêncity
ứng với truy vấn tìm khoảng cách tới bệnh viện gần nhất.
Dữ liệu ra:
- Gồm
t
dòng, mỗi dòng là kết quả ứng với mỗi truy vấn.
Input:
9 3 5
3 4 6
1 2
2 3
2 4
4 5
5 8
6 7
5 7
5 9
1
2
4
5
8
Output:
2
1
0
1
2
Giải thích:
- Hình trên miêu tả đồ thị kết nối các thành phố. Có 3 bệnh viện ở khu dân cư lần lượt là 3, 4, 6.
- Có 5 truy vấn
- Truy vấn 1: Cần tìm khoảng cách bệnh viện ngắn nhất tới khu dân cư 1. Bệnh viện ở khu dân cư 3 hoặc 4 gần nhất với khoảng cách 2.
- Truy vấn 2: Cần tìm khoảng cách bệnh viện ngắn nhất tới khu dân cư 2. Bệnh viện ở khu dân cư 3 hoặc 4 gần nhất với khoảng cách 1.
- Truy vấn 3: Cần tìm khoảng cách bệnh viện ngắn nhất tới khu dân cư 4. Bệnh viện ở khu dân cư 4 nên không cần đi đâu cả! (Khoảng cách 0).
- Truy vấn 4: Cần tìm khoảng cách bệnh viện ngắn nhất tới khu dân cư 5. Bệnh viện ở khu dân cư 4 gần nhất với khoảng cách 1.
- Truy vấn 5: Cần tìm khoảng cách bệnh viện ngắn nhất tới khu dân cư 8. Bệnh viện ở khu dân cư 4 gần nhất với khoảng cách 2.
Giới hạn:
- ~5 \le n \le 10^{6}~, ~1 \le k < n, 1 \le t \le n~.
- ~1 \le a_1, a_2, ..., a_k \le n~
Bình luận