main
黄海 2 years ago
parent 0c6b2f089d
commit a8ff084b3c

@ -74,7 +74,7 @@ typedef pair<int, int> PII;
#define x first
#define y second
const int N = 510, M = N * N;
const int N = 510, M = N * N / 2; // C(n,2)
int n, k;
struct Edge {
@ -109,7 +109,9 @@ int main() {
// 枚举所有点与点之间的边
for (int i = 0; i < n; i++)
for (int j = i + 1; j < n; j++)
edge[el++] = {i, j, get_dist(q[i], q[j])}; // 记录单向边即可
edge[el++] = {i, j, get_dist(q[i], q[j])}; // 因为是一个无向图,所以我们取一半就可以了
// 之所以取一半,其实也是为了配合后面的 cnt--,因为cnt--的现实含义是两个点连接上了家族数量减少了1个
// 如果这里不是取一半那么后面就需要cnt-=2, 哈哈,就问你是不是懵~
// 边权由小到大排序
sort(edge, edge + el);
@ -138,6 +140,5 @@ int main() {
printf("%.2lf\n", res);
return 0;
}
```

Loading…
Cancel
Save