#4849. 圖

題目描述

給定一張 nn 個點 mm 條邊的無向聯通圖和其中一棵生成樹,要求刪掉正好兩條樹邊和一些非樹邊,使得圖不連通。求最少刪掉幾條非樹邊。

保證以 11 號點爲生成樹的根時,非樹邊的兩端的最近公共祖先是 11 號點。

數據範圍

3n40000;m100000;mn13 \le n \le 40000; m \le 100000; m \ge n − 1

題解

考慮刪掉兩條邊後刪掉非樹邊,那就考慮孤立三塊中的一塊。

1.刪掉不在以 11 爲根的同一子樹內的邊:那就要麼把 uuvv 子樹連出去的非樹邊刪掉,要麼刪掉兩個子樹外到這兩個子樹內的邊。
2.如果刪掉同一子樹的邊:可以發現 u,vu,v 構成祖先關係更優。那就是要麼是孤立 vv 子樹,要麼孤立 uu 子樹扣掉 vv 子樹的部分,要麼就是孤立 uu 子樹外的連通塊。

dsu on tree\text{dsu on tree} 維護即可。效率: O(nlog2n)O(nlog^2n)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章