偶樹的切分

2021-10-07 19:13:08 字數 890 閱讀 5550

題目名稱:偶樹的切分 描述

傳送門

輸入第一行包含乙個偶數n。

以下n-1行每行包含兩個整數a和b,表示a和b之間有一條邊。

對於30%的資料,1 ≤ n ≤ 20

對於100%的資料, 1 ≤ n ≤ 100000

輸出輸出最多可以切斷的邊數。

樣例輸入

61 2

3 14 1

1 56 2

樣例輸出

1
解題思路

以 f

ff 和 i

ii 點為例,假設以i

ii為根節點的子樹有偶樹個節點,假設該f

ff和i

ii節點間路徑不再劃分方案當中,則f

ff和i

ii一定在乙個聯通分量當中,但是在i

ii的子樹的節點數一定是偶樹,則f

ff與i

ii不再劃分方案的想法與之矛盾,因此,其一定在劃分方案中。

按照這個思路,可以以該節點為根節點的子樹是否為偶樹來作為劃分條件,當子樹節點為偶樹時,則「斷開」與父節點的路徑,依次作為統計,至於為什麼答案最後要減1,因為這棵樹的根節點啊,其本身就是乙個偶樹,不能劃分了

完整**

#includeusing namespace std;

#define n 100010

int n,a,b;

vectorv[n];

int num[n];

bool vis[n];

void dfs(int k)

vis[1]=true;

dfs(1);

int ans=0;

for(int i=1;i<=n;i++)

} cout<}

偶的大學,偶的未來

不知從何時開始,不願再考慮自己的未來,哪怕涉及到這方面的一丁點東西,都好像觸動了我心靈深處那根最脆弱的神經,腦海中剩下的便只有茫然 懷揣著兒時的夢想,我鬥志昂揚的踏進我渴盼已久的地方。聆聽著大海的聲音,吹著和煦的海風,吮吸著校園中特有的文化氣息凝結的甘露,我的心忍不住的顫抖,這是多麼熟悉的情景,多少...

資料庫的垂直切分和水平切分

分類 資料庫技術 2013 04 08 22 39 664人閱讀收藏 舉報資料切分可以是物理上的,對資料通過一系列的切分規則將資料分布到不同的db伺服器上,通過路由規則路由訪問特定的資料庫,這樣一來每次訪問面對的就不是單台伺服器了,而是n臺伺服器,這樣就可以降低單台機器的負載壓力。數據切分也可以是資...

資料庫的垂直切分和水平切分

資料切分可以是物理上的,對資料通過一系列的切分規則將資料分布到不同的db伺服器上,通過路由規則路由訪問特定的資料庫,這樣一來每次訪問面對的就不是單台伺服器了,而是n臺伺服器,這樣就可以降低單台機器的負載壓力。數據切分也可以是資料庫內的,對資料通過一系列的切分規則,將資料分布到乙個資料庫的不同表中,比...