免费送板子。。
```cpp
auto kruskal = [&](vector<edge> e) {
vector<int> fa(n, -1);
function<int(int)> find = [&](int x) {
if (~fa[x]) return fa[x] = find(fa[x]);
return x;
};
sort(e.begin(), e.end(), [](edge x, edge y) { return x.w < y.w; });
int ans = 0;
for (auto x : e) {
int u = x.u, v = x.v, w = x.w;
if ((u = find(u)) ^ (v = find(v))) { ans += w, fa[u] = v; }
}
return ans;
};
cout << kruskal(getE()) << '\n';
by 1saunoya @ 2020-05-17 11:12:56
@[_Wallace_](/user/61430)
QAQ
by Lidaban @ 2020-05-17 11:30:44
@[Isaunoya](/user/96580) 送板子 ×
大毒瘤 √
by tiger0134 @ 2020-05-17 11:32:10