並查集 食物鏈
題解 請移步
創新的亮點
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是...