DHBB 2023 - CVAHN - 11 - Lắp hệ thống điện

Xem dạng PDF

Gửi bài giải

Điểm: 20,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong 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

Một vùng dân cư có ~n~ hộ lắp đặt hệ thống điện mặt trời. Hộ dân thứ ~i~ có tọa độ ~(x_i,y_i)~, trong đó các tọa độ là số nguyên không âm và không có hai hộ dân nào trùng tọa độ.

Hiện có ~m~ đoạn dây điện kết nối một số cặp hộ dân. Chính quyền muốn lắp đặt thêm các đoạn dây điện để tạo thành một hệ thống mà hai hộ dân bất kỳ đều có kết nối điện trực tiếp hoặc gián tiếp với nhau.

Có thể lắp một đoạn dây mới giữa hai hộ dân bất kỳ. Chi phí của đoạn dây mới bằng khoảng cách Euclid giữa tọa độ của hai hộ dân đó. Các đoạn dây đã có được sử dụng mà không phát sinh thêm chi phí.

Yêu cầu: Hãy tính tổng độ dài nhỏ nhất của các đoạn dây điện cần lắp thêm để toàn bộ hệ thống được liên thông.

Input

  • Dòng đầu tiên chứa hai số nguyên dương ~n,m~ ~(2 \le n \le 1000; 1 \le m \le 10^4)~;

  • ~n~ dòng tiếp theo, dòng thứ ~i~ chứa hai số nguyên ~x_i,y_i~ ~(0 \le x_i,y_i \le 10^5)~, là tọa độ của hộ dân thứ ~i~;

  • ~m~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~u,v~ ~(u \ne v; 1 \le u,v \le n)~, cho biết hai hộ dân ~u,v~ đã được nối trực tiếp bằng dây điện.

Output

In ra tổng độ dài nhỏ nhất của các đoạn dây điện cần lắp thêm, với đúng ba chữ số sau dấu chấm thập phân.

Scoring

Subtask Điểm Ràng buộc
1 ~50\%~ ~n \le 500~

Sample Input 1

5 2
1 1
4 1
1 6
3 4
5 3
1 3
4 5

Sample Output 1

5.064

Notes

Cần lắp thêm hai đoạn dây điện:

  • Nối hộ dân ~2~ với hộ dân ~5~;

  • Nối hộ dân ~3~ với hộ dân ~4~.

Tổng độ dài các đoạn dây mới là ~5.064~.


Bình luận

Hãy đọc nội quy trước khi bình luận.


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