HDU6769 2020多校第二場 二分樹規

樹的直徑本質上是最大值,要最小化它則二分 Check核心:使得對每一個點,在樹的直徑不超過mid的前提下, 通過它的最長的路徑儘量最短 記f[u][k]爲u的子樹中選擇k條邊的最長路徑的最小值 爲何這樣定義?由於在dp過程當中不停地用父子兩個點的最長鏈拼成直徑而且判斷 是否大於mid,這樣只要最後f[1][k]被更新了就說明存在合法解c++ 初始化:對於點u,一開始對全部的k都是無窮大(在tmp中
相關文章
相關標籤/搜索