【題目描述】
在某城市裡住著n個人,任何兩個認識的人不是朋友就是敵人,而且滿足:
1、我朋友的朋友是我的朋友;
2、我敵人的敵人是我的朋友;
所有是朋友的人組成乙個團夥。告訴你關於這n個人的m條資訊,即某兩個人是朋友,或者某兩個人是敵人,請你編寫乙個程式,計算出這個城市最多可能有多少個團夥?
【輸入】
第1行為n和m,1以下m行,每行為p x y,p的值為0或1,p為0時,表示x和y是朋友,p為1時,表示x和y是敵人。
【輸出】
乙個整數,表示這n個人最多可能有幾個團夥。
【輸入樣例】
6 41 1 4
0 3 5
0 4 6
1 1 2
【輸出樣例】
3思路:我敵人的敵人是我的朋友
初始設i的敵人n+i
#include
#define ll long long
#define inf 0x3f3f3f3f
#define pii pair
using
namespace std;
int n,m,fa[
2005
],flag,u,v,vis[
2005];
intfind
(int x)
void
union
(int x,
int y)
intmain()
else
}int res=0;
for(
int i=
1;i<=n;i++
) cout << res << endl;
return0;
}
CodeVS 2597 團夥(並查集)
題目 codevs 2597 題目 時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同一團夥的條件是...
Codevs 2597 團夥 並查集
2597 團夥 時間限制 1 s 空間限制 128000 kb 題目等級 gold 傳送門題目描述 description 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同...
Codevs 2597 團夥 並查集
2597 團夥 時間限制 1 s 空間限制 128000 kb 題目等級 gold 傳送門題目描述 description 1920年的芝加哥,出現了一群強盜。如果兩個強盜遇上了,那麼他們要麼是朋友,要麼是敵人。而且有一點是肯定的,就是 我朋友的朋友是我的朋友 我敵人的敵人也是我的朋友。兩個強盜是同...