@[Jerry_Money](/user/906970) 不是 `orz` 吗你输了个 `org` 呀
by Pink_Cut_Tree @ 2024-08-03 14:26:01
```
#include<cstdio>
#include<algorithm>
using namespace std;
int n,m,ans;
struct node
{
int f,t,d;
}a[200005];//存边,Kruskal不用建图
bool cmp(node x,node y){return x.d<y.d;}
struct bin
{
int w[5005];
int find(int x)
{
if(x==w[x]) return x;
w[x]=find(w[x]);
return w[x];
}
void add(int x,int y)
{
w[find(x)]=find(y);
return ;
}
bool ask(int x,int y)
{
if(find(x)==find(y)) return true;
else return false;
}
}b;//并查集
int main()
{
scanf("%d%d",&n,&m);
for(int i=1;i<=m;i++) scanf("%d%d%d",&a[i].f,&a[i].t,&a[i].d);
for(int i=1;i<=n;i++) b.w[i]=i;//并查集初始化
sort(a+1,a+m+1,cmp);//按边权排序
for(int i=1;i<=m;i++)//枚举每条边
{
if(b.ask(a[i].f,a[i].t)) continue;//连通则跳过
ans+=a[i].d;//否则记录
b.add(a[i].f,a[i].t);//改为连通
}
for(int i=2;i<=n;i++)
if(!b.ask(1,n))
{
printf("orz");
return 0;
}//判断是否连通
printf("%d",ans);
return 0;
}
```
本人已过,拿去用吧
不信?
·-[看这里](https://www.luogu.com.cn/record/170278550)
by tianyun4188 @ 2024-08-03 14:26:34
```
#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 5003, M = 2e5 + 3;
struct DSU {
int fa[N], siz[N];
void init(int n = N - 1) { for (int i = 0; i <= n; ++i) fa[i] = i, siz[i] = 1; }
int find(int k) { return fa[k] == k ? k : fa[k] = find(fa[k]); }
void merge(int u, int v) {
u = find(u), v = find(v);
if (u == v) return;
if (siz[u] < siz[v]) swap(u, v);
fa[v] = u, siz[u] += siz[v];
}
bool query(int u, int v) { return find(u) == find(v); }
} dsu;
struct Edge {
int from, to, val;
Edge(int u = 0, int v = 0, int w = 0) : from(u), to(v), val(w) {}
bool operator < (const Edge &other) const { return val < other.val; }
} e[M];
int n, m, ans;
signed main() {
cin >> n >> m;
dsu.init(n);
for (int i = 1; i <= m; ++i)
cin >> e[i].from >> e[i].to >> e[i].val;
sort(e + 1, e + 1 + m);
for (int i = 1; i <= m; ++i)
if (dsu.query(e[i].from, e[i].to) == 0)
dsu.merge(e[i].from, e[i].to), ans += e[i].val;
for (int i = 2; i <= n; ++i)
if (dsu.query(1, i) == 0)
return cout << "orz" << '\n', 0;
cout << ans << '\n';
return 0;
}
```
还有不要在代码里加文明用语,Luogu 容易被封号,CSP 和 NOI(p) 容易被禁赛。
by qazsedcrfvgyhnujijn @ 2024-08-03 14:26:47
来我团吧!这里的资源很多,可以和我一起建设,团主(我awa)虽然是个蒟蒻,但是我会努力刷题的qwq!-[加入看这里](https://www.luogu.com.cn/team/80372)
by tianyun4188 @ 2024-08-03 14:29:00
感谢大佬们
by Jerry_Money @ 2024-08-03 14:31:10
@[Jerry_Money](/user/906970) 来我团吧谢谢!我们可以一起找题!我团非常宠人的招人中谢谢!-[加入吧谢谢!!!!!!](https://www.luogu.com.cn/team/80372)
by tianyun4188 @ 2024-08-03 14:34:10