原文:樹剖模板

題目描述 有一棵點數為 N 的樹,以點 為根,且樹點有邊權。然后有 M 個操作,分為三種: 操作 :把某個節點 x 的點權增加 a 。 操作 :把某個節點 x 為根的子樹中所有點的點權都增加 a 。 操作 :詢問某個節點 x 到根的路徑中所有點的點權和。 輸入格式 第一行包含兩個整數 N, M 。表示點數和操作數。 接下來一行 N 個整數,表示樹中節點的初始權值。 接下來 N 行每行兩個正整數 f ...

2020-11-15 06:49 9 130 推薦指數:

查看詳情

分 1. 相關概念 重兒子:父親節點的所有兒子中子樹結點數目最多(size最大)的結點; 輕兒子:父親節點中除了重兒子以外的兒子; 重邊:父親結點和重兒子連成的邊; 輕邊:父親節點和輕兒子連成的邊; 重鏈:由多條重邊連接而成的路徑; 輕鏈 ...

Mon May 11 18:06:00 CST 2020 1 560
LCA講解

LCA的類型多種多樣,只說我知道的,就有倍增求LCA,tarjin求LCA和分求LCA,當然,也還有很多其他的方法。 其中最常用,速度最快的莫過於分的LCA了。 分,首先字面理解一下,什么是分。   就是把一棵分為若干條鏈,然后利用數據結構(樹狀數組,SBT ...

Sun Apr 15 19:09:00 CST 2018 0 1431
分詳解(洛谷模板 P3384)

洛谷·[模板]分 寫在前面 首先,在學分之前最好先把 LCA、樹形DP、DFS序 這三個知識點學了 emm還有必備的 鏈式前向星、線段 也要先學了。 如果這三個知識點沒掌握好的話,分難以理解也是當然的。 分 就是對一棵分成幾條鏈,把樹形變為線性 ...

Sun Dec 03 17:50:00 CST 2017 11 10942
分詳解

轉載請注明出處,部分內容引自banananana大神的博客 別說你不知道什么是╮(─▽─)╭(幫你百度一下) 前置知識:  dfs序  線段 先來回顧兩個問題:1,將從x到y結點最短路徑上所有節點的值都加上z 這也是個模板題了吧 我們很容易想到,樹上差分可以以O(n+m ...

Thu May 10 20:54:00 CST 2018 27 22297
分詳解

前言 分是什么? 分,說白了就是一種讓你代碼不得不強行增加1k的數據結構-dms   個人理解:+1:joy: 有什么用? 證明出題人非常毒瘤 可以非常友(bao)好(li)的解決一些樹上問題:grimacing: (友情提示:學分之 ...

Sun Dec 24 15:31:00 CST 2017 15 3433
分學習

最近一段時間決定先好好搞一下數據結構了,首先搞了下樹鏈分; 專題訓練:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=28982#overview 分並不是一個復雜的算法或者數據結構,只是能把一棵拆成鏈來處 ...

Tue Aug 13 03:43:00 CST 2013 0 13014
分詳解

預備知識:線段,DFS序 DFS序 DFS序,字面意思,就是DFS到的順序 我們只需要在搜到節點的時候記錄一下就可以了 比如這樣可能是一個的DFS序 那知道了DFS序又有什么用呢 我們可以發現一顆子樹在DFS序上是連續的一段 那么它就有了一個區間的性質,每個節點對應 ...

Fri Dec 28 06:04:00 CST 2018 5 675
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM