動態樹是一類要求維護森林的連通性的題的總稱,這類問題要求維護某個點到根的某些數據,支持樹的切分,合並,以及對子樹的某些操作。其中解決這一問題的某些簡化版(不包括對子樹的操作)的基礎數據結構就是LCT(link-cut tree)。 LCT的大體思想類似於樹鏈剖分中的輕重鏈剖分(輕重鏈剖分 ...
為了優化體驗 其實是強迫症 ,蒟蒻把總結拆成了兩篇,方便不同學習階段的Dalao們切換。 LCT總結 應用篇戳這里 概念 性質簡述 首先介紹一下鏈剖分的概念 感謝laofu的講課 鏈剖分,是指一類對樹的邊進行輕重划分的操作,這樣做的目的是為了減少某些鏈上的修改 查詢等操作的復雜度。 目前總共有三類:重鏈剖分,實鏈剖分和並不常見的長鏈剖分 重鏈剖分 實際上我們經常講的樹剖,就是重鏈剖分的常用稱呼。 ...
2018-01-21 16:16 88 32216 推薦指數:
動態樹是一類要求維護森林的連通性的題的總稱,這類問題要求維護某個點到根的某些數據,支持樹的切分,合並,以及對子樹的某些操作。其中解決這一問題的某些簡化版(不包括對子樹的操作)的基礎數據結構就是LCT(link-cut tree)。 LCT的大體思想類似於樹鏈剖分中的輕重鏈剖分(輕重鏈剖分 ...
前言: Link-Cut Tree簡稱LCT是解決動態樹問題的一種數據結構,可以說是我見過功能最強大的一種樹上數據結構了。在此與大家分享一下LCT的學習筆記。提示:前置知識點需要樹鏈剖分和splay。 引例: 在講LCT之前先來看一道題:給一棵樹,每個點有一個點權,多次操作,操作包 ...
Update:原來的洛谷U21715已成坑qwq 已經被某位管理員巨佬放進公共題庫啦!又可以多一個AC記錄啦! 洛谷題目傳送門 其實也可以到這里交啦 思路分析 動態維護樹的重心 題目中說到國家的首都會選在某個使得其他城市到它距離之和最小的城市,那不就是樹的重心了嘛。樹的重心性質真的很 ...
題目描述 小L 最近沉迷於塞爾達傳說:荒野之息(The Legend of Zelda: Breath of The Wild)無法自拔,他尤其喜歡游戲中的迷你挑戰。 游戲中有一個叫做“LCT” 的挑戰,它的規則是這樣子的:現在有一個N 個點的 樹(Tree),每條邊有一個整數邊權vi ...
題目背景 這是一道經典的Splay模板題——文藝平衡樹。 題目描述 您需要寫一種數據結構(可參考題目標題),來維護一個有序數列,其中需要提供以下操作:翻轉一個區間,例如原有序序列是5 4 3 2 1,翻轉區間是[2,4]的話,結果是5 2 3 4 1 輸入輸出格式 輸入 ...
為了優化體驗(其實是強迫症),蒟蒻把總結拆成了兩篇,方便不同學習階段的Dalao們切換。 LCT總結——概念篇戳這里 題單 灰常感謝XZY巨佬提供的強力資磁!(可參考XZY巨佬的博客總結) 題單對於系統地學習一個知識點還是有好處的。 所以蒟蒻搜集了各處的LCT題目(其實作為近年新興的知識點 ...
這一個月貌似已經考了無數次\(LCT\)了..... 保險起見還是來一發總結吧..... A. LCT 模板 \(LCT\) 是由大名鼎鼎的 \(Tarjan\) 老爺發明的。 主要是用來維護樹上路徑問題的。 它的神奇之處在於可以直接把一條路徑摳出來維護。 其實就是維護樹鏈剖分中的重鏈與輕鏈 ...
洛谷題目傳送門 你谷無題解於是來補一發 隨便百度題解,發現了不少諸如樹剖\(log^3\)LCT\(log^2\)的可怕描述。。。。。。 於是來想想怎么利用題目的性質,把復雜度降下來。 首先,每個點的輸出狀態只有\(0/1\),於是每個點的總狀態也非常有限,可以根據權值為\(1\)的兒子 ...