• poj1182测试数据过了,但A不了,暂时放在这,以后再看


    #include<iostream>
    #define MAXN 1002
    using namespace std;
    
    int T[MAXN],X[MAXN],Y[MAXN],par[MAXN],shugao[MAXN];
    void init(int n)
    {
        int i;
        for(i=0;i<n;i++)
        {
            par[i]=i;//一开始这些节点并没有联系
            shugao[i]=0;
        }
    }
    int f_ind(int x)
    {
        if(par[x]==x)
        {
            return x;
        }else{
        return par[x]=f_ind(par[x]);
        }
    }
    bool same(int x,int y)
    {
        return f_ind(x)==f_ind(y);
    }
    void unite(int x,int y)
    {
        x=f_ind(x);
        y=f_ind(y);
        if(x==y)
        {
            return ;
        }
        if(shugao[x]<shugao[y])
        {
            par[x]=y;
    
        }
        else
        {
            par[y]=x;
            if(shugao[x]==shugao[y])
            {
                shugao[x]++;
            }
        }
    }
    
    
    
    
    
    int main()
    {
        int i,N,K,x,y,t;
    
        cin >> N>>K;
        for(i=0;i<K;i++)//输入K组数据,范围在N之间
        {
            cin>>T[i]>>X[i]>>Y[i];
        }
        init(3*N);
        int ans=0;//记录错误信息
        for(i=0;i<K;i++)
        {
             x=X[i],y=Y[i],t=T[i];
            if(x<0||y>=N||y>N-1||y<0)
            {
                ans++;
                continue ;
            }
            if(t==1)
            {
                if(same(x,y+N)||same(x,y+2*N))
                {
    
                    ans++;
                }
                else
                {
                    unite(x,y);
                    unite(x+N,y+N);
                    unite(x+2*N,y+2*N);
                }
    
            }
            else
            {
                if(same(X[i],Y[i])||same(X[i],Y[i]+2*N))
                {
                    ans++;
                }
                else
                {
                    unite(x,y+N);
                    unite(x+N,y+2*N);
                    unite(x+2*N,y);
                }
            }
    
        }
        cout<<ans<<endl;
    }
    

      

  • 相关阅读:
    关于MIME类型问题,浏览器请求到的资源是乱码
    关于vue切换用户,路由表不更新问题
    Flutter环境安装,ios真机调试
    vue使用trackingjs
    js的中文英文排序
    google无法播放mp4 chrome无法播放h264
    写在Blog前
    NOI2010Day1
    菜鸡KLC的中考游记
    ABC161 题解
  • 原文地址:https://www.cnblogs.com/41412179guo/p/4590743.html
Copyright © 2020-2023  润新知