原文:LeetCode LCP 05. 發 LeetCoin DFS序+帶懶惰標記的線段樹

題目描述 力扣決定給一個刷題團隊發 LeetCoin 作為獎勵。同時,為了監控給大家發了多少 LeetCoin,力扣有時候也會進行查詢。 該刷題團隊的管理模式可以用一棵樹表示: 團隊只有一個負責人,編號為 。除了該負責人外,每個人有且僅有一個領導 負責人沒有領導 不存在循環管理的情況,如 A 管理 B,B 管理 C,C 管理 A。 力扣想進行的操作有以下三種: 給團隊的一個成員 也可以是負責人 發 ...

2022-02-20 18:56 0 3572 推薦指數:

查看詳情

dfs線段

dfs+線段,啥?如果在一棵樹上,需要你修改一些節點和查詢一些節點,如果直接dfs搜的話肯定超時,那用線段?樹結構不是區間啊,怎么用?用dfs將樹結構轉化為一個區間,就能用線段進行維護了。 dfs是指:每個節點在dfs深度優先遍歷中的進出棧的時間序列,記錄每個點進棧和出棧的時間點 ...

Wed Aug 08 16:21:00 CST 2018 0 761
線段懶惰標記小筆記

線段可以進行區間更新,但是相比較於普通的線段單點更新和區間查詢的功能來說,區間更新與其最大的不同就是在與區間更新需要加一個懶惰標記,來記下對懶惰標記的理解。 懶惰標記用來干什么? 解釋: 理論上來說,如果[3, 9]這個區間被修改的話,那么下圖中的所有綠色的結點的值都要得到重新計算 ...

Tue Jul 16 21:56:00 CST 2019 0 513
區間更新和懶惰標記線段

區間更新和懶惰標記線段 前言 普通版本的線段進行的是 單點更新 和 區間查詢 . 對於帶有 懶惰標記線段, 則可以進行 區間更新. 懶惰標記的意義 代表了這個結點的值已經被更新過了, 但是沒有進行子樹的結點值更改操作, 用lazy數組標記一下. 所以, 每次進行值的更新和查詢 ...

Tue Oct 31 05:28:00 CST 2017 0 1072
帶lazy標記線段

線段的lazy操作 以POJ 2777 Count Color為例。 線段,是一個滿的二叉樹,每次每一個子節點都是父節點的一半。所以二叉樹的每個節點都維護了一個區間。可是實現快速的查詢。 對於更新來講的話,如果每次都更新到最下面的節點,會非常的耗時間。所以假如更新到某個節點的時候,而這 ...

Thu Apr 07 07:23:00 CST 2016 0 2317
【bzoj4771】七彩 鏈的並+STL-set+DFS+可持久化線段

題目描述 給定一棵n個點的有根,編號依次為1到n,其中1號點是根節點。每個節點都被染上了某一種顏色,其中第i個節點的顏色為c[i]。如果c[i]=c[j],那么我們認為點i和點j擁有相同的顏色。定義depth[i]為i節點與根節點的距離,為了方便起見,你可以認為樹上相鄰的兩個點之間的距離 ...

Wed Apr 04 18:43:00 CST 2018 0 977
線段標記永久化

線段標記永久化 其實線段標記永久化是一個非常容易理解的東西,往往我們都會在區間操作時打lazytag,但是在標記下放時會耗費大量的時間,所以我們可以嘗試標記永久化,這樣我們的就不用下放標記,同時代碼也更加簡潔,因為我們少了一個pushdown函數,同時出錯率也會大大降低 ...

Thu Jul 26 17:07:00 CST 2018 0 830
線段標記永久化

前言 對於,主席等使用到線段的比較復雜的數據結構,如果區間修改的話,打標記后pushdown或者pushup是很難做到的完全不行吧 所以這個時候,一個神奇的東西誕生了。。。 正題 線段標記永久化,維護一個標記,假設為cov,再維護一個sum 假設修改區間[ql, qr]全部加上v ...

Sat Jan 06 17:25:00 CST 2018 0 1029
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM