new file: P3366.cpp
Check cpp / md pair / Check md headers (push) Successful in 4s

This commit is contained in:
hanyixuanten committed 2026-10-28 12:50:48 +00:00
1 parent 1d59a2d3f1
commit 095dcf1eac
2 files changed
+87

No files matched your search

+34
View File
@@ -0,0 +1,34 @@
#include<bits/stdc++.h>
using namespace std;
int n, m;
vector<pair<int, pair<int, int>>> fri;
int fa[5005];
int find(int x) {
if(fa[x] == x) return x;
return fa[x] = find(fa[x]);
}
int main() {
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; ++i) fa[i] = i;
for(int i = 1, u, v, w; i <= m; ++i) {
scanf("%d%d%d", &u, &v, &w);
fri.push_back({w, {u, v}});
}
sort(fri.begin(), fri.end());
long long ans = 0;
for(auto i : fri) {
if(find(i.second.first) != find(i.second.second)) {
ans += i.first;
fa[find(i.second.first)] = find(i.second.second);
}
}
int to = find(1);
for(int i = 2; i <= n; ++i) {
if(find(i) != to) {
printf("orz\n");
return 0;
}
}
printf("%lld\n", ans);
return 0;
}