POJ 1182 食物鏈 並查集

2022-04-13 18:06:22 字數 678 閱讀 2743

並查集 食物鏈 

題解 請移步

創新的亮點

1 在找爸爸的時候更新關係。

2 判斷兩者的關係運用的向量思維

3 關係的表達 同類0 吃1 被吃2 同時%3

為什麼te了

#include #include #include #include #define max 50005

#define inf 999999

using namespace std;

int fx,fy;

int fa[max];

short re[max];

int getfather(int x)

return fa[x];

}int main()

if(d==2&&x==y)

int fx=getfather(x);

int fy=getfather(y);

if(fx!=fy)

else

if(d==2&&((3 - re[x] + re[y]) % 3 != d - 1))}}

cout<

二叉堆merge函式的作用是:將兩個有序的序列合併為乙個有序的序列。函式引數:merge(first1,last1,first2,last2,result,compare);

POJ 1182 食物鏈 並查集

此題利用並查集解決。對於每只動物i建立3個元素i a,i b,i c,並用這3 n個元素建立並查集。1 i x表示 i屬於種類x 2 並查集你的每一組表示組內所有元素代表的情況同時發生或不發生。對於每一條資訊,只需要按照下列操作即可 1.第一種 x,y同類,合併x a和y a x b和y b x c...

POJ 1182 食物鏈 (並查集)

食物鏈time limit 1000ms memory limit 10000k total submissions 48713 accepted 14202 description 動物王國中有三類動物a,b,c,這三類動物的食物鏈構成了有趣的環形。a吃b,b吃c,c吃a。現有n個動物,以1 n編...

POJ 1182 食物鏈(並查集)

description 動物王國中有三類動物a,b,c,這三類動物的食物鏈構成了有趣的環形。a吃b,b吃c,c吃a。現有n個動物,以1 n編號。每個動物都是a,b,c中的一種,但是我們並不知道它到底是哪一種。有人用兩種說法對這n個動物所構成的食物鏈關係進行描述 第一種說法是 1 x y 表示x和y是...