关注
这题克鲁斯卡尔就行
#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
相关推荐
点赞 评论 收藏
分享
10-11 16:54
河北工程技术学院 测试工程师 点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
352825次浏览 3437人参与
# 我的实习求职记录 #
6085545次浏览 83682人参与
# 百度开奖 #
213896次浏览 1352人参与
# 地方国企笔面经互助 #
5232次浏览 13人参与
# 职场吐槽大会 #
90683次浏览 752人参与
# 选完offer后,你后悔学本专业吗 #
23021次浏览 165人参与
# 阿里云管培生offer #
42033次浏览 962人参与
# ai智能作图 #
3453次浏览 71人参与
# 运营商笔面经互助 #
92697次浏览 1335人参与
# 实习中的菜狗时刻 #
278849次浏览 2739人参与
# 腾讯求职进展汇总 #
199763次浏览 1663人参与
# 如果有时光机,你最想去到哪个年纪? #
24790次浏览 509人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
37564次浏览 343人参与
# 风评不好的公司,你会去吗? #
20715次浏览 94人参与
# 上班苦还是上学苦呢? #
90846次浏览 783人参与
# 大疆求职进展汇总 #
413623次浏览 2934人参与
# 国企还是互联网,你怎么选? #
90173次浏览 702人参与
# 硬件兄弟们 甩出你的华为奖状 #
73597次浏览 609人参与
# 远程面试的尴尬瞬间 #
20490次浏览 296人参与
# 软件开发2024笔面经 #
2325763次浏览 48224人参与
# 如果中了500万,你会离职吗? #
13620次浏览 145人参与
# 如何一边实习一边秋招 #
999980次浏览 12698人参与