Building Fire Stations 39届亚洲赛牡丹江站B题
生活随笔
收集整理的這篇文章主要介紹了
Building Fire Stations 39届亚洲赛牡丹江站B题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題意:
? ? ?給你一棵樹,讓你再里面選取兩個點作為**點,然后所有點的權值是到這兩個點中最近的那個的距離,最后問距離中最長的最短是多少,輸出距離還有那兩個點(spj特判)。
思路:
? ? ?現場賽的時候我們壓根就沒看這道題,還有k題也是水題,可惜當時我們讀的題意不對<以為數字可以隨意斷開,然后拼接的數組可以再段。。>,最后只過了3個題,拿了個銅,不過沒啥遺憾,因為這是第一次去亞洲賽,沒空手而歸就是好事,下幾場放開了打就行了。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
? ? ?給你一棵樹,讓你再里面選取兩個點作為**點,然后所有點的權值是到這兩個點中最近的那個的距離,最后問距離中最長的最短是多少,輸出距離還有那兩個點(spj特判)。
思路:
? ? ?現場賽的時候我們壓根就沒看這道題,還有k題也是水題,可惜當時我們讀的題意不對<以為數字可以隨意斷開,然后拼接的數組可以再段。。>,最后只過了3個題,拿了個銅,不過沒啥遺憾,因為這是第一次去亞洲賽,沒空手而歸就是好事,下幾場放開了打就行了。
回到這個題目,其實這個題目我們可以判定的是這兩個點分別"罩著"兩棵樹<原因是最后的答案已經是小于等于樹的直徑的一半的,如果在同一側,那么答案就大于等于直徑的一半了>,這兩顆樹一定是整個樹從直徑斷開的分成的兩顆樹,那么我們就兩遍廣搜分成兩顆樹,然后再在兩顆樹上分別找直徑,然后兩個點就是直徑的中點,然后答案就是兩個塔到所有自己所在的那顆子樹上所有點的最大距離的最大距離,其他的還有一些細節,比如分成兩顆樹后有一棵樹只剩1個點的時候,去中點可能弄錯,這個地方注意點,具體細節可以看代碼。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
總結
以上是生活随笔為你收集整理的Building Fire Stations 39届亚洲赛牡丹江站B题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: POJ2135 来回最短路(简单费用流)
- 下一篇: Average Score39届亚洲赛牡