題目大意
給出一棵家譜樹,樹中的節點都有乙個名字,保證每個名字都是唯一的,然後進行若干次查詢,找出兩個名字的最近公共祖先。
分析
實現
#include#include#include#include#include#include#includeusing namespace std;
unordered_setpath; //儲存從乙個節點到根節點的路徑
unordered_mappre; //儲存圖的結構,通過 key為子節點,value為 父節點
int main()
cin >> m;
for (int i = 0; i < m; i++)
path.insert(person1);
//進行查詢
bool find = false;
while (pre.find(person2) != pre.end())
} //person2此時為根節點,需要注意(不要忘記查詢)!
if (!find &&path.find(person2) != path.end())
if (!find)
cout << -1 << endl;
}return 0;
}
hiho 1062 最近公共祖先
題目大意 給出一棵家譜樹,樹中的節點都有乙個名字,保證每個名字都是唯一的,然後進行若干次查詢,找出兩個名字的最近公共祖先。分析 實現 include include include include include include includeusing namespace std unordere...
1062 最近公共祖先 一
時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 描述 小ho最近發現了乙個神奇的 雖然還不夠像58同城那樣神奇,但這個 仍然讓小ho樂在其中,但這是為什麼呢?為什麼呢?小hi如是問道,在他的觀察中小ho已經沉迷這個 一周之久了,甚至連他心愛的樹玩具都棄置一邊。嘿嘿,小hi,...
hihoCoder 1062 最近公共祖先 一
時間限制 10000ms 單點時限 1000ms 記憶體限制 256mb 描述 小ho最近發現了乙個神奇的 雖然還不夠像58同城那樣神奇,但這個 仍然讓小ho樂在其中,但這是為什麼呢?為什麼呢?小hi如是問道,在他的觀察中小ho已經沉迷這個 一周之久了,甚至連他心愛的樹玩具都棄置一邊。嘿嘿,小hi,...