Advertisement

项目1385:由团伙构成,并结合了并查集

阅读量:

【题目描述】

在一个拥有n位居民的城市中,任意两人之间存在认识关系,这种关系要么是朋友,要么是敌人,并且遵循以下两条规则:

1、若某人的朋友与另一个人是朋友,则此人与该人亦为朋友;

2、若某人的敌人与另一个人是敌人,则此人与该人则成为朋友。

所有互为朋友的个体将构成一个团伙。现提供关于这n个人的m条信息,每条信息描述的是两个人之间的朋友或敌对关系。请编写一个程序,用以确定这座城市中可能存在的最大团伙数量。

【输入】

第一行包含两个整数n和m,其中满足1<n<1000且1<=m<=100 000;

接下来的m行中,每一行给出三个数值p、x和y,其中p的取值只能为0或1。当p等于0时,表示x与y之间存在朋友关系;而当p等于1时,则表明x与y互为敌人关系。

【输出】

一个数值,用于表示在n个人中可能形成的最大团伙数量。

【输入样例】

6 4
1 1 4
0 3 5
0 4 6
1 1 2

【输出样例】

3

代码:

复制代码
    #include<iostream>
    #include<string>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<algorithm>
    us

全部评论 (0)

还没有任何评论哟~