//並查集////查詢 是否在同乙個組
//合併 這兩個組
#include
#include
using
namespace std;
typedef
long
long ll;
const
int n=
100;
int head[n]
;int rank[n]
;void
init
(int n)
}int
find
(int x)
void
unite
(int x,
int y)
//兩個樹一長一短 短的去連在長的下面
}//要是一樣長 那y連到x x長度要++。 防止越來越長 成鏈 增加複雜度
bool
same
(int x,
int y)
食物鏈 poj 1182n個動物 三種 a** b吃c c吃a
k條資訊
第一種資訊 a b是同一種動物
第二種資訊 a**
有的資訊錯誤(不存在這個動物or與之前矛盾or出錯)
//a 1 2:表示1和2是同一種 那麼若1是a,2是a 並查集合並 若b若c同理
//b 1 2:表示1吃2 若1是a,2是b 並查集合並 若b若c同理
//0~n-1 表示i是a
//n~2*n 表示i是b
//2n~3n 表示i是c
int
main()
if(x==
'a')
}else}}
cout
}
/*
樣例輸入
100 7
a 101 1
b 1 2
b 2 3
b 3 3
a 1 3
b 3 1
a 5 5輸出3
*/
並查集 食物鏈
noi2001,水題,但是我調了很久。食物鏈time limit 1000ms memory limit 10000k total submissions 27766 accepted 8066 description 動物王國中有三類動物a,b,c,這三類動物的食物鏈構成了有趣的環形。a吃b,b吃...
並查集 食物鏈
食物鏈 description 動物王國中有三類動物a,b,c,這三類動物的食物鏈構成了有趣的環形。a吃b,b吃c,c吃a。現有n個動物,以1 n編號。每個動物都是a,b,c中的一種,但是我們並不知道它到底是哪一種。有人用兩種說法對這n個動物所構成的食物鏈關係進行描述 第一種說法是 1 x y 表示...
並查集 食物鏈
動物王國中有三類動物a,b,c,這三類動物的食物鏈構成了有趣的環形。a吃b,b吃c,c吃a。現有n個動物,以1 n編號。每個動物都是a,b,c中的一種,但是我們並不知道它到底是哪一種。有人用兩種說法對這n個動物所構成的食物鏈關係進行描述 第一種說法是 1 x y 表示x和y是同類。第二種說法是 2 ...