CSP认证201503-4网络延时[C++题解]:树的直径
生活随笔
收集整理的這篇文章主要介紹了
CSP认证201503-4网络延时[C++题解]:树的直径
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目分析
來源:acwing
分析:
樹的直徑的概念: 樹上最遠的兩個節點之間的距離就被稱為樹的直徑,連接這兩點的路徑被稱為樹的最長鏈。
類似于圓的直徑的概念:圓上直線距離最遠的兩個點構成直徑。
這是模板題,請參考:算法提高課-動態規劃-樹形DP-AcWing 1072. 樹的最長路徑:dfs寫法
只不過模板題是有邊權的,這道題邊權都是1.寫起來更加簡單。
這道題是樹的直徑的模板題,前提是能識別出來。
首先,問題很明顯,求圖(樹)任意兩點距離的最大值,這在樹中的定義就是樹的直徑。這條路徑稱為樹的最長鏈。
然后,這種模板題在提高課講過,放在樹形dp那里講的。
講的做法是dfs,遍歷每個點,以該點作為最高點,求它的兒子們從上到下路徑長度的最大值和次大值,加起來就是最高點的最大路徑長。
ac代碼
題目來源
https://www.acwing.com/problem/content/3218/
題解分享:https://www.acwing.com/blog/content/1632/
總結
以上是生活随笔為你收集整理的CSP认证201503-4网络延时[C++题解]:树的直径的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 算法提高课-动态规划-树形DP-AcWi
- 下一篇: CSP认证201509-1数列分段[C+