Mạng Lưới Bò

Đề bài

Mô tả

Farmer John có N con bò nằm rải rác trên nông trại, cần xây dựng mạng lưới liên lạc để tất cả các con bò có thể giao tiếp với nhau (trực tiếp hoặc gián tiếp). Bò thứ i nằm tại tọa độ (xi,yi).

Chi phí kết nối trực tiếp hai con bò i và j bằng bình phương khoảng cách Euclid: (xi−xj)2+(yi−yj)2.

Hãy tính chi phí tối thiểu để xây dựng mạng lưới liên lạc kết nối tất cả các con bò.

Dữ liệu vào

  • Dòng 1: Số nguyên N
  • N dòng tiếp theo: Hai số nguyên xi,yi là tọa độ bò i

Dữ liệu ra

Một số nguyên là chi phí tối thiểu. Lưu ý kết quả có thể vượt quá phạm vi số nguyên 32-bit.

Ràng buộc

  • 1≤N≤105
  • 0≤xi≤106, 0≤yi≤10
  • Nhiều con bò có thể đứng cùng một vị trí (chi phí nối chúng bằng 0)
  • Giới hạn thời gian: 4 giây

Ví dụ

Input Output Giải thích
10
83 10
77 2
93 4
86 6
49 1
62 7
90 3
63 4
40 10
72 0
660 Chi phí tối thiểu để kết nối tất cả 10 con bò là 660.
4
5 3
5 3
5 3
9 3
16 Ba con bò đầu đứng cùng chỗ nên nối chúng tốn 0; chỉ cần trả (9−5)2=16 để nối con bò còn lại.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0