关注
这题克鲁斯卡尔就行
#include<bits/stdc++.h>
using namespace std;
vector<int> father;
int find(int x){
return father[x] == x ? x : father[x] = find(father[x]);
}
bool cmp(const vector<int>&; a, const vector<int>&; b){
return a[2] < b[2];
}
int main(){
int n, m;
cin>>n>>m;
father = vector<int>(n + 1);
for(int i = 1; i <= n; i++) father[i] = i;
vector<vector<int>> edges(m, vector<int>(3));
for(int i = 0; i < 3; i++){
for(int j = 0; j < m; j++)
cin>>edges[j][i];
}
sort(edges.begin(), edges.end(), cmp);
int ans = 0;
for(int i = 0; i < m; i++){
int f1 = find(edges[i][0]), f2 = find(edges[i][1]);
if(f1 == f2) continue;
ans += edges[i][2];
int ff = min(f1, f2);
father[f1] = father[f2] = ff;
}
cout<<ans<<endl;
return 0;
}
查看原帖
3 1
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 哪些公司开提前批了? #
26208次浏览 263人参与
# 华子oc时间线 #
1244211次浏览 6484人参与
# 风评不好的公司,你会去吗? #
61221次浏览 442人参与
# 实习如何「偷」产出? #
50939次浏览 1332人参与
# 除了主业以外,你还有哪些其他收入? #
12065次浏览 201人参与
# 不卡学历的大厂有哪些? #
29134次浏览 228人参与
# 哪些公司校招卡第一学历 #
68092次浏览 268人参与
# 校招阶段,学历VS技术哪个更重要? #
17625次浏览 188人参与
# 职场新人体验 #
25839次浏览 248人参与
# 腾讯音乐求职进展汇总 #
98132次浏览 570人参与
# 社恐入职新公司如何融入团队 #
11909次浏览 63人参与
# 校园里的破防时刻 #
11361次浏览 128人参与
# 你投递的公司有几家约面了? #
108940次浏览 779人参与
# Offer比较,你最看重什么? #
191615次浏览 1301人参与
# 你觉得技术面多长时间合理? #
100264次浏览 720人参与
# 你的秋招第一场笔试是哪家 #
147739次浏览 1484人参与
# 你最满意的offer薪资是哪家公司? #
33105次浏览 176人参与
# 你今年的平均薪资是多少? #
134035次浏览 686人参与
# 正在实习的碎碎念 #
1454790次浏览 13469人参与
# 实习打杂,要跑路吗 #
18246次浏览 205人参与