VOI 22 Bài 3 - Kết nối internet

View as PDF

Submit solution

Points: 1.50 (partial)
Time limit: 1.0s
Memory limit: 512M
Input: INTERNET.INP
Output: INTERNET.OUT

Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Thành phố nơi Nam sinh sống đã xay dựng hệ thống Wi-Fi công cộng để phục vụ khách du lịch và người dân trong thành phố. Hệ thống bao gồm ~n~ trạm phát sóng được đánh số từ ~1~ đến ~n~, trạm thứ ~i~ được đặt ở vị trí tương ứng với tọa độ ~(x_i, y_i)~ trên bản đồ mặt phẳng tọa độ của thành phố. Các trạm phát sóng này đều có mức độ phủ sóng là ~s~. Hai trạm phát sóng ~i~ và ~j~ có thể truyền thông tin cho nhau bằng sóng nếu ~\left|x_i - x_j \right| + \left| y_i - y_j \right| \le s~, hoặc trạm phát sóng ~i~ có thể truyền thông tin qua một số trạm phát sóng trung gian để tới được trạm phát sóng ~j~. Một nhóm các trạm phát sóng gọi là liên thông nếu như hai trạm bất kỳ trong nhóm có thể truyền thông tin cho nhau. Mỗi nhóm liên thông chỉ cần một đường truyền cung cấp internet để tất cả các trạm phát sóng này đều có thể phát được mạng internet cho người dân sử dụng.

Tuy nhiên, sau một thời gian sử dụng, chi phí duy trì hoạt động của hệ thống này là rất lớn, trong đó chi phí sử dụng mạng internet hàng tháng là chiếm nhiều nhất. Chi phí sử dụng mạng internet tỉ lệ thuận với số đường truyền cung cấp internet. Do đó, chính quyền thành phố muốn giảm thiểu số lượng truyền cung cấp internet mà vẫn bảo đảm tất cả các trạm đều có mạng internet bằng cách thiết kế các đường dây cáp kết nối trực tiếp một số trạm phát sóng với nhau. Với hai trạm phát sóng ~u~ và ~v~ chưa truyền được thông tin cho nhau, khi kết nối trực tiếp chúng bằng đường dây cáp, hai trạm phát sóng này có thể truyền tin cho nhau, vì vậy, nếu một trong hai trạm có mạng internet thì trạm còn lại cũng có mạng internet và toàn bộ nhóm liên thông chứa trạm này đều phát được mạng internet, do đó, có thể giảm độ một đường truyền cung cấp internet. Chi phí để kết nối hai trạm phát sóng ~u~ và ~v~ bằng đường dây cáp là ~\left | x_u - x_v \right| + \left| y_u - y_v \right|~. Chính quyền thành phố muốn xây dựng phương án giảm đi ~k~ đường truyền cung cấp internet mà vẫn bảo đảm trạm phát sóng nào cũng có mạng internet bằng cách sử dụng thêm ~k~ đường dây cáp kết nối trực tiếp sao cho tổng chi phí kết nối bằng dây cáp là nhỏ nhất.

Yêu cầu: Cho biết số lượng và vị trí của ~n~ trạm phát sóng, mức độ phủ sóng ~s~ của các trạm phát sóng và số lượng ~k~ đường truyền cung cấp internet cần giảm đi, hãy tính chi phí nhỏ nhất để kết nối các trạm phát sóng bằng dây cáp sao cho trạm phát sóng nào cũng có mạng internet.

Dữ liệu

Vào từ file văn bản INTERNET.INP:

  • Dòng đầu tiên chứa ba số nguyên dương ~n, s, k~ (~n \le 10^5~; ~s \le 10^9~; ~k \le 20~);
  • Dòng thứ ~i~ trong số ~n~ dòng tiếp theo chứa hai số nguyên không âm ~x_i, y_i~ mô tả vị trí trạm phát sóng thứ ~i~ (~1 \le i \le n~; ~x_i, y_y \le 10^9~). Dữ liệu bảo đảm không có hai trạm phát sóng nào có tọa độ trùng nhau và số lượng đường truyền cung cấp internet cần sử dụng cho hệ thống ban đầu lớn hơn ~k~.

Các số trên cùng một dòng cách nhau bởi dấu cách.

Kết quả

Ghi ra file văn bản INTERNET.OUT một số nguyên duy nhất là chi phí nhỏ nhất để kết nối các trạm phát sóng thỏa mãn yêu cầu.

  • Có ~20\%~ số test ứng với ~20\%~ số điểm của bài thỏa mãn: ~n \le 1000~;
  • ~20\%~ số test khác ứng với ~20\%~ số điểm của bài thỏa mãn tọa độ tất cả các trạm phát sóng đều nằm trên một đường thẳng;
  • ~20\%~ số test khác ứng với ~20\%~ số điểm của bài thỏa mãn giá trị tọa độ mỗi trạm phát sóng không vượt quá ~1000~;
  • ~40\%~ số test còn lại ứng với ~40\%~ số điểm của bài không có ràng buộc gì thêm.

Ví dụ

Input
5 4 1
1 1
3 4
8 5
5 5
7 1
Output
5
Giải thích

Ban đầu có ~3~ nhóm liên thông là {Trạm 1}, {Trạm 2, Trạm 3, Trạm 4} và {Trạm 5}. Phương án cho chi phí nhỏ nhất để giảm bớt một đường truyền cung cấp internet là nối cặp giữa Trạm 3 và Trạm 5 cho chi phí bằng ~|8 - 7| + |5 - 1| = 5~.


Comments

Please read the guidelines before commenting.


There are no comments at the moment.