1主要題幹新元件的編號等於融合之前元件的總個數加一。當然,參與融合的 k個元件融合之後依然存在,並且每個元件至多參與一次融合。
2由於元件的容量有限,eddie 沒有能力喚醒 hobo 全部的回憶,所以他會用下列兩種方式來融合元件:34
集合的交:一段記憶儲存在新的元件中,當且僅當這段記憶在參與融合的k 個元件中都有儲存。
5 集合的並:一段記憶儲存在新的元件中,當且僅當這段記憶在參與融合的至少乙個元件中有儲存。
考試沒留時間,(留時間估計也想不粗來,霧),我們考慮建圖,一條有向邊a指向b的意義是a包含b的內容,但考慮k==1的情況,實質上是新點和所給點的內容完全相同,那麼建雙向邊。每次用dfs判斷是否y能到x。至於複雜度,(首先資料很水),其次,每個點只融合一次,兩兩造點的話,這個圖的深度也很小。
1 #include2 #include3view code#define maxn 251000
4using
namespace
std;
5int
n,m;
6struct
rrbl[maxn*30];int hd[maxn*3
],itot;
9void add(int x,int
y)14
bool dfs(int u,int fa,int
md)21
intmain()
32else
39else44}
45}46return0;
47 }
抽象建模很需要學