洛谷P2814 家譜

2021-10-07 10:01:17 字數 578 閱讀 8752

洛谷 p2814 家譜

水的典型的並查集題目,但在建立關係時需要有一定的思考,因為名字都是字串,所以這裡採用了map以建立名字和名字之間的關係

#include

#include

#include

#include

#include

using

namespace std;

map persons;

string s, t, p;

string zuisu

(string x)

return persons[x]

=zuisu

(persons[x]);

//找到後更新關係,以後就不用一代一代的查詢了

}void

f(string x, string y)

intmain()

}else

if(s[0]

=='+'

)else

if(s[0]

=='?')}

return0;

}

洛谷P2814 家譜

查詢祖先的題目,自然是要用到並查集了,不過在輸入,資料的處理上要注意細節,名字的前面 等字元顯然是分類的,可以先輸入乙個字元,然後判斷後分別處理。還有map關聯兩個字串就可以了,不用再進行編號 字元的轉換,並查集時一定要注意祖先的初始化。include include include include...

洛谷P2814 家譜

現代的人對於本家族血統越來越感興趣。給出充足的父子關係,請你編寫程式找到某個人的最早的祖先。輸入格式 輸入由多行組成,首先是一系列有關父子關係的描述,其中每一組父子關係中父親只有一行,兒子可能有若干行,用 name的形式描寫一組父子關係中的父親的名字,用 name的形式描寫一組父子關係中的兒子的名字...

洛谷 P2814 家譜

現代的人對於本家族血統越來越感興趣。給出充足的父子關係,請你編寫程式找到某個人的最早的祖先。輸入格式 輸入由多行組成,首先是一系列有關父子關係的描述,其中每一組父子關係中父親只有一行,兒子可能有若干行,用 name的形式描寫一組父子關係中的父親的名字,用 name的形式描寫一組父子關係中的兒子的名字...