• hdu3367并查集+Kruskal


    我靠,怎么过不了,不行  明天继续debug  明明过样例了  我的天。。。。

    次奥,打错了一个代码半天没找出来!!!哭啊。。

    这里记一下,kruskal是无环图。

    先贴挫代码:

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    #define maxn 10005
    using namespace std;
    int p[maxn],sum;
    int set[maxn];
    struct node{
        int c1;
        int c2;
        int len;
    }q[10*maxn];
    int cmp(node q1,node q2)
    {
        return q1.len>q2.len;
    }
    int find(int x)
    {
        if(x!=p[x])
          p[x]=find(p[x]);
         return p[x];
    }
    void unions(int x,int y)
    {
        p[x]=y;
    }
    int main()
    {
        //freopen("input.txt","r+",stdin);
        int i,n,m,fx,fy;
        while(scanf("%d%d",&n,&m)!=EOF)
        {
            if(n==0&&m==0)break;
            memset(set,0,sizeof(set));
            sum=0;
            for(i=1;i<=m;i++)
            {
                scanf("%d%d%d",&q[i].c1,&q[i].c2,&q[i].len);
            }
            for(i=0;i<n;i++)
                p[i]=i;
            sort(q+1,q+m+1,cmp);
            for(i=1;i<=m;i++)
            {
                fx=find(q[i].c1);
                fy=find(q[i].c2);
                if(fx==fy)
                {
                    if(!set[fx])
                    {
                        set[fx]=1;
                        sum+=q[i].len;
                    }
                    continue;
                }
                if(set[fx]&&set[fy])continue;
                if(set[fx]&&!set[fy])
                {
                    unions(fy,fx);
                }
                else
                {
                    unions(fx,fy);
                }
                sum+=q[i].len;
            }
            cout<<sum<<endl;
        }
        return 0;
    }
    


     

  • 相关阅读:
    IDEA安装步骤
    记录常用网站
    IDEA解决中文乱码问题
    使用IDEA 中 实现springboot 热部署 (spring boot devtools版)
    Springboot学习
    写文档步骤
    some untracked working tree files问题解决
    利用mybatis-generator自动生成代码
    Java实现打印功能
    sql语句大全
  • 原文地址:https://www.cnblogs.com/amourjun/p/5134175.html
Copyright © 2020-2023  润新知