记录端点数与顶点(村庄)数是否相同,如果相同,所形成的最短路径为最优解输出
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
#define MAX 5000
// 顶点 权 排序 树(并查集)
int u[MAX], v[MAX], w[MAX], r[MAX], p[105], sum, num, n, nc;
int cmp(const int a, const int b)
{
return w[a]<w[b];
}
int find(int x)
{
return p[x]==x?x:find(p[x]);
}
bool Kruskal()
{
int i;
for (i=1; i<=num; i++)
p[i......
阅读全文