poj 1703 Find them, Catch them

原创 2013年12月04日 21:01:01

还是种类并查集!!


题目链接:

点击打开链接

题目大意:

给出不属于同一集合的人的关系。给出询问并判断是不是同一个组织或者当前信息不能判断

其关系。


#include<cstdio>
#include<iostream>
using namespace std;

int fa[100010];
int re[100010];

void init(int n)
{
    for(int i=1;i<=n;i++)
    {
        fa[i]=i;
        re[i]=0;
    }
}

int find(int x)
{
    if(fa[x]!=x)
    {
        int t=fa[x];
        fa[x]=find(fa[x]);
        re[x]=(re[x]+re[t])%2;
    }
    return fa[x];
}

void Union(int x,int y)
{
    int fx=find(x);
    int fy=find(y);
    fa[fx]=fy;
    re[fx]=(re[y]+2-re[x]+1)%2;
}

int main()
{
    int T,n,m,x,y;
    char u;
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d%d",&n,&m);
        init(n);

        getchar();
        for(int i=0;i<m;i++)
        {
            scanf("%c%d%d",&u,&x,&y);
            if(u=='D')
            {
                Union(x,y);
            }
            else
            {
                int fx=find(x);
                int fy=find(y);

                if(fx!=fy)
                    printf("Not sure yet.\n");
                else
                {
                    if((re[x]+re[y])%2)
                        printf("In different gangs.\n");
                    else
                        printf("In the same gang.\n");
                }
            }
            getchar();
        }
    }
    return 0;
}


POJ Find them, Catch them

Language: Default Find them, Catch them Time Limit: 1000MS   Memory Limit: 10000K ...
  • R1986799047
  • R1986799047
  • 2015年03月21日 21:01
  • 871

POJ - 1703 Find them, Catch them(种类并查集)

题意:输入n和m,代表有n个人和m个询问,n个人分别属于两个帮派,每个询问遵循下面的规则: A a b要求输出a与b是否在同一个帮派。D a b告诉信息a和b是不同帮派的成员。 这题与种类并查集的经典...
  • qq_18738333
  • qq_18738333
  • 2015年09月12日 18:57
  • 718

POJ - 1703 - Find them, Catch them (并查集)

题目传送:Find them, Catch them 思路:用一个关系数组记录当前结点与其父亲的关系,0表示同类,1表示不同类 AC代码: #include #include ...
  • u014355480
  • u014355480
  • 2015年05月12日 00:04
  • 687

POJ 1703 Find them, Catch them(并差集)

带关系的并差集. #include #include #include #include #include #include #include #include #include ...
  • binwin20
  • binwin20
  • 2013年06月06日 14:58
  • 499

POJ 1703 Find them, Catch them(种类并查集)

Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 44682 ...
  • usher_ou
  • usher_ou
  • 2017年04月14日 17:20
  • 169

poj 1703 Find them, Catch them 并查集

/*将敌人和朋友并到一个集合中,用另外一个数组(rel[i])存放i和集合代表元素(就是ji[i]中存的)的关系。 如果两个元素不在统一集合内,说明他们关系不清楚; 如果两个元素在同一个集合内: ...
  • qq172108805
  • qq172108805
  • 2011年07月24日 10:13
  • 725

POJ 1703 Find them, Catch them 种类并查集

种类并查集
  • Dinivity123
  • Dinivity123
  • 2014年02月25日 16:55
  • 759

POJ - 1703 Find them, Catch them (并查集)

点击打开题目链接 The police office in Tadu City decides to say ends to the chaos, as launch actions to ...
  • l1832876815
  • l1832876815
  • 2017年04月04日 20:32
  • 233

POJ 1703:Find them, Catch them

Description The police office in Tadu City decides to say ends to the chaos, as launch actions to r...
  • LOI__DiJiang
  • LOI__DiJiang
  • 2015年10月13日 08:56
  • 268

poj 1703 Find them, Catch them(种类并查集)

Find them, Catch them Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3...
  • u013022194
  • u013022194
  • 2014年08月15日 17:08
  • 469
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj 1703 Find them, Catch them
举报原因:
原因补充:

(最多只允许输入30个字)