Chọn ĐTQG Lâm Đồng 2025 - Kinh doanh cà phê
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
Tỉnh Alpha có ~n~ phường được đánh số từ ~1~ đến ~n~. Có ~n-1~ con đường hai chiều, con đường thứ ~i~ nối liền hai phường ~u_i~ và ~v_i~. Một đường đi từ ~s~ đến ~t~ là một dãy các phường ~s, v_1, v_2, \dots, v_k, t~ sao cho hai phường liên tiếp trong dãy đều được nối bởi một con đường nào đó và độ dài của đường đi là ~k+1~. Khoảng cách giữa hai phường ~u~ và ~v~ là độ dài của đường đi ngắn nhất từ ~u~ đến ~v~. Dữ liệu vào đảm bảo giữa hai phường bất kỳ đều có đường đi đến nhau.
Tập đoàn kinh doanh cà phê AiLegend đã mở ~m~ chi nhánh, chi nhánh thứ ~i~ nằm ở phường ~p_i~. Do nhu cầu uống cà phê tăng cao của giới trẻ hiện nay, CEO tập đoàn AiLegend quyết định mở thêm đúng một chi nhánh nữa (hiển nhiên là ở một phường nào đó chưa có chi nhánh).
CEO tập đoàn AiLegend mong muốn rằng khoảng cách lớn nhất từ một phường bất kỳ chưa có chi nhánh đến một phường đã có chi nhánh là nhỏ nhất. Nói cách khác, gọi ~d_u~ là khoảng cách nhỏ nhất từ phường chưa có chi nhánh ~u~ đến một phường đã có chi nhánh. Gọi ~s = \max(d_u)~ với ~u = 1, 2, \dots, n~. CEO mong muốn mở thêm một chi nhánh sao cho giá trị của ~s~ là nhỏ nhất.
Yêu cầu: Bạn hãy giúp CEO tập đoàn AiLegend giải bài toán trên?
Input
Dòng đầu tiên chứa hai số nguyên ~n~ và ~m~, lần lượt là số phường của tỉnh Alpha và số chi nhánh của tập đoàn AiLegend ~(1 \le n \le 300000~ và ~0 \le m \le n-1)~;
Dòng thứ hai chứa ~m~ số nguyên ~p_1, p_2, \dots, p_m~ ~(1 \le p_i \le n)~, là các phường đã có chi nhánh;
~n-1~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~u~ và ~v~ ~(1 \le u, v \le n)~, là con đường hai chiều trực tiếp nối phường ~u~ và phường ~v~.
Output
Gồm một dòng là giá trị nhỏ nhất của ~s~ sau khi tập đoàn AiLegend thêm một chi nhánh.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~20\%~ | ~1 \le n \le 3000~ |
| 2 | ~20\%~ | ~1 \le n \le 300000, m = 0~ |
| 3 | ~30\%~ | ~1 \le n \le 300000, m \le 10~ |
| 4 | ~30\%~ | Không có ràng buộc gì thêm |
Sample Input 1
7 1
5
1 3
1 5
1 7
3 4
7 2
7 6
Sample Output 1
2
Sample Input 2
7 2
5 4
1 3
1 5
1 7
3 4
7 2
7 6
Sample Output 2
1
Notes
Ở ví dụ 1, chọn phường ~1~ để mở thêm chi nhánh.
Ở ví dụ 2, chọn phường ~7~ để mở thêm chi nhánh.
Bình luận