acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
登录
注册
题目详情提交记录(0)
  • tj

    #include<iostream> #include<algorithm> using namespace std; int n,m; int dad[20005],bad[20005]; struct chou{ int x,y,n; }g[100005]; bool cmp(chou x,chou y){ return x.n>y.n; } int find(int x){ if(dad[x]==x)return x; return find(dad[x]); } bool check(int x,int y){ return find(x)==find(y); } void merge(int x,int y){ dad[find(x)]=find(y); } int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>n>>m; for(int i=1;i<=n;i++)dad[i]=i; for(int i=1;i<=m;i++)cin>>g[i].x>>g[i].y>>g[i].n; sort(g+1,g+m+1,cmp); for(int i=1;i<=m;i++){ if(check(g[i].x,g[i].y)){ cout<<g[i].n; return 0; } if(!bad[g[i].x])bad[g[i].x]=g[i].y; else merge(bad[g[i].x],g[i].y); if(!bad[g[i].y])bad[g[i].y]=g[i].x; else merge(bad[g[i].y],g[i].x); } cout<<0; }

    userId_undefined

    ༺ཌༀ༒☯∞复仇者∞☯༒ༀད༻™

    出道萌新时空双修者8月全勤卷王题解仙人
    4阅读
    0回复
    1点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页