【模板】Kruskal

int n, m;
struct Edge
{
    int u, v, w;
}a[MAX_M];
// 令a关于w升序排列
int r[MAX_N];
// 并查集
int Find(int x)
{
    if(r[x] ^ x) return r[x] = Find(r[x]);
    return x;
}
int MST;

void Kruskal()
{
    ; i <= n; ++i) r[i] = i;
    ; i <= m; ++i)
    {
        if(Find(a[i].u) ^ Find(a[i].v))
        {
            r[Find(a[i].u)] = Find(a[i].v);
            MST += a[i].w;
        }
    }
    cout << MST;
    ;
}
上一篇:nginx反向代理docker registry报”blob upload unknown"解决办法


下一篇:github commit 报错:error: failed to push some refs to 'https:'错误解决方法