luogu#P6362. 平面欧几里得最小生成树

    ID: 10377 远端评测题 1500ms 250MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>凸包分治生成树计算几何O2优化Special Judge

平面欧几里得最小生成树

题目描述

平面上有 nn 个点,第 ii 个点坐标为 (xi,yi)(x_i, y_i)。连接 i,ji, j 两点的边权为 (xixj)2+(yiyj)2\sqrt{(x_i - x_j) ^ 2 + (y_i - y_j) ^ 2}。求最小生成树的边权之和。

输入格式

第一行一个整数 nn

接下来 nn 行,每行输入两个整数 xi,yix_i, y_i

输出格式

输出一行一个实数,表示答案。

当你的答案与标准输出的绝对误差或相对误差在 10610^{-6} 内时,就会被视为正确。

4
0 0
1 2
-1 2
0 4
6.472136

提示

样例解释 1

该样例中,最小生成树如下图所示:

边权之和为 25+26.472135955002 \sqrt{5} + 2 \approx 6.47213595500


数据规模与约定

  • 对于 50%50\% 的数据,n5000n \le 5000
  • 对于 100%100\% 的数据,3n1053 \le n \le 10 ^ 5xi,yi105\lvert x_i \rvert, \lvert y_i \rvert \le 10 ^ 5