jzoj5956 【NOIP2018模擬11.7A組】easy LCA (結論)

分析 死因:思路錯了 一開始在考慮歐拉序和原序列單調棧的問題,這樣想其實可以分治(超麻煩)。 注意到一個結論,假如你要求n個點的lca,那麼你可以以任意順序排序,然後對相鄰求lca,再求深度最小的即可。 證明很顯然,考慮歐拉序,答案肯定會至少被一組相鄰的點蓋到, 這樣問題就很簡單了,做兩遍單調棧再枚舉答案即可。 其實還有兩種做法:將dep轉化爲個數,這樣其實就是查詢子樹內在給出序列內所有連續段長度
相關文章
相關標籤/搜索