关注
这题克鲁斯卡尔就行
#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-30 18:20
第一拖拉机制造厂拖拉机学院 C++
牛客41406533...:回答他在课上学,一辈子待在学校的老教授用三十年前的祖传PPT一字一句的讲解,使用谭浩强红皮书作为教材在devc++里面敲出a+++++a的瞬间爆出114514个编译错误来学 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我来点评面试官 #
6261次浏览 52人参与
# 实习教会我的事 #
37088次浏览 320人参与
# 京东开奖 #
441967次浏览 2489人参与
# 今年秋招是回暖还是遇冷 #
14317次浏览 88人参与
# 如果不考虑收入,你最想做什么工作? #
36456次浏览 225人参与
# 你实习是赚钱了还是亏钱了? #
15479次浏览 152人参与
# 商战,最累的是我们 #
24726次浏览 91人参与
# 京东工作体验 #
17267次浏览 104人参与
# 同bg的你秋招战况如何? #
163715次浏览 953人参与
# 教师节,你送祝福了吗 #
9577次浏览 71人参与
# 用一句话形容你的团队氛围 #
9354次浏览 115人参与
# 秋招开始捡漏了吗 #
52754次浏览 361人参与
# 三一重工求职进展汇总 #
21647次浏览 82人参与
# 找工作八股要背到什么程度? #
8605次浏览 143人参与
# 考研人,我有话说 #
150500次浏览 1199人参与
# 硬件人,你被哪些公司给挂了 #
68993次浏览 932人参与
# 58同城求职进展汇总 #
38912次浏览 260人参与
# 你找工作是从容有余 or 匆忙滚爬? #
5520次浏览 64人参与
# 华为存储OD事变 #
144167次浏览 724人参与
# 上班后,才发现大学__白学了 #
8960次浏览 57人参与
# 大学生该如何认清当下的就业环境? #
107885次浏览 636人参与
查看15道真题和解析