乙個基礎的並查集,因為有類似於迴圈的存在,所以用乙個陣列,3個區間去存(很巧妙),使得第乙個區間吃第二個區間,第二個區間吃第三個區間,第三個區間吃第乙個區間。
要注意,如果要對並查集賦值,一定要3個區間的關係均賦值到位。
#include
using
namespace std;
const
int mx=
1e5+9;
int t[mx*3]
,n,k,order,x,y,ans=0;
intfin
(int u)
intsame
(int u,
int v)
void
unite
(int u,
int v)
intmain()
if( order==1)
}else}}
printf
("%d"
,ans)
;return0;
}
並查集 食物鏈
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 ...