**:tanky woo
判斷兩點:
1.任何2點的父節點不能相同->否則會導致2點間有多條通路
2.所有點只有1個集合
**:
//author: tanky woo
//hdoj 1272
#include using
namespace
std;
#define max 100001 //
father[x]表示x的父節點
intfather[max];
//rank[x]表示x的秩
intrank[max]; //
初始化void make_set(intn)}
//查詢int find_set(intx)
//合併
void union(int x, inty)}
intmain()
make_set(max);
rank[a]=1
; rank[b]=1
; union(a, b);
int flag=1; //
表示是否有多條路
while(scanf("
%d %d
", &a, &b) && (a+b))
int cnt = 0
;
for(int i=1; i<=max; ++i)
if(rank[i] && find_set(i) ==i)
cnt++;
if(flag && cnt==1
) printf(
"yes\n");
else
printf(
"no\n");
}return0;
}
hdoj 1272 小希的迷宮
題目 關鍵點 1.特別小心輸入的格式,這個比較糾結。2.題目的最關鍵點 1 所有點的根節點都相同 即下面的count 1 2 輸入路徑不存在回來,這裡用flag來標記回來 即構成迴路,flag 1 3.注意find3 int x 這裡用路徑壓縮的話,速度會快很多 用空間來換時間 ac include...
hdoj1272小希的迷宮
problem description 上次gardon的迷宮城堡小希玩了很久 見problem b 現在她也想設計乙個迷宮讓gardon來走。但是她設計迷宮的思路不一樣,首先她認為所有的通道都應該是雙向連通的,就是說如果有乙個通道連通了房間a和b,那麼既可以通過它從房間a走到房間b,也可以通過它從...
HDOJ 1272 小希的迷宮
題目描述 上次gardon的迷宮城堡小希玩了很久 見problem b 現在她也想設計乙個迷宮讓gardon來走。但是她設計迷宮的思路不一樣,首先她認為所有的通道都應該是雙向連通的,就是說如果有乙個通道連通了房間a和b,那麼既可以通過它從房間a走到房間b,也可以通過它從房間b走到房間a,為了提高難度...