求助...
  • 板块P1396 营救
  • 楼主蒟___
  • 当前回复4
  • 已保存回复4
  • 发布时间2020/8/23 18:01
  • 上次更新2023/11/6 19:35:11
查看原帖
求助...
231200
蒟___楼主2020/8/23 18:01

为什么运行错误?

#include<iostream>
#include<cstring>
#include<algorithm>

using namespace std;

struct edge{
    int x,y,w;
}a[20010];

int m,n,s,t,F[20010];

bool cmp(edge p,edge q){
    return p.w<q.w;
}

int find(int N){
    if(F[N]==N) return F[N];
    return F[N]=find(F[N]);
}

int main(){
    cin>>m>>n>>s>>t;
    
    for(int i=1;i<=m;i++){
        cin>>a[i].x>>a[i].y>>a[i].w;
    }
    sort(a+1,a+1+m,cmp);
    for(int i=1;i<=n;i++) F[i]=i;
    for(int i=1;i<=m;i++){
        int xx=find(xx),yy=find(yy);
        if(xx!=yy) F[xx]=yy;
        if(find(s)==find(t)){
            cout<<a[i].w;
            break;
        }
    }
    
    return 0;
}
2020/8/23 18:01
加载中...