原文:[線段樹系列] 線段樹優化建圖

這一篇講線段樹優化建圖。 發現網上關於線段樹優化建圖的博客很少而且講的不是很詳細,很多人會看得比較懵。 於是原本這一篇打算講樹鏈剖分的就改成講優化建圖了。 前置知識:動態開點線段樹 看到標題你可能會感覺奇怪,線段樹和建圖有什么關系 事實上,線段樹優化建圖就是利用兩棵線段樹,減少連邊數量,達到降低復雜度的目的。 聽起來好像很神奇,其實實現非常簡單。 我們來看這一道題:CF B Legacy 題目描述 ...

2019-10-29 20:00 12 551 推薦指數:

查看詳情

【學習筆記】線段優化

線段優化 在有些數據范圍內是不允許我們把圖上的所有邊建出來的 然后我們對編號為下標線段 線段樹上的每個節點的 \(l\) 和 \(r\) 就是把 \(l\rightarrow r\) 中的所有點縮到一個點表示了 然后這里我們完善一下: 把每個點拆一下,成一個入點,一個出點,分別 ...

Mon Apr 27 19:33:00 CST 2020 0 703
[學習筆記]線段優化

一個點向一個點連邊太easy了。 現實有的時候並沒有這么簡單。 對於這樣的一類問題:需要多次(m=1e5次左右)從一個編號在[L1,R1]的區間內的所有點,向另一個編號在[L2,R2]的所有點之間分別連權值相同的邊。 求S到T的最短路,或者其他的信息。 就是一個的輔助工具。解題 ...

Sun Oct 28 03:57:00 CST 2018 1 2080
「算法筆記」線段優化

一、引入 先來看一道題:CF786B Legacy。 題目大意:有 \(n\) 個點、\(q\) 次操作。每一種操作為以下三種類型中的一種: 操作一:連一條 \(u\to v\) 的有向 ...

Sat Oct 03 23:37:00 CST 2020 2 484
[線段系列] 線段合並

這一篇來講講線段合並。 前置知識:動態開點線段 還是一樣先給一道例題:[JOI2012] Building2 題面是日文的,這里給出中文翻譯: 有n">n">n個城市,它們組成了一棵。 第i">i個城市有一座高度為Hi">Hi的建築。 n">n">i">Hi">你需要選擇一條盡量長 ...

Wed Oct 30 00:59:00 CST 2019 0 293
線段

總原理: 將[1,n]分解成若干特定的子區間(數量不超過4*n) 用線段對“編號連續”的一些點,進行修改或者統計操作,修改和統計的復雜度都是O(log2(n)) 用線段統計的東西,必須符合區間加法,(也就是說,如果已知左右兩子樹的全部信息,比如要能夠推出父節點);否則,不可能通過分 ...

Sat May 19 08:43:00 CST 2018 4 11559
淺談線段優化DP

淺談線段優化DP 本篇隨筆淺談一下線段優化DP。 一、關於DP優化的兩種方式 DP算法是大家耳熟能詳的最優化算法之一。 有的時候,我們設計DP的時候,需要采取措施進行DP優化來適應題目對時間空間的要求。 一般來講,DP的優化有兩種方式:第一種是針對狀態設計進行優化。比如滾動數組 ...

Sat Oct 24 02:58:00 CST 2020 0 469
[線段系列] 動態開點線段

不了解線段的朋友可以看看我上一篇博客: [線段系列] 普通線段 補充一個上一篇漏了的點:線段要開4倍空間。 然而面對龐大的數據我們開maxn<<2的空間是肯定開不下的。 這時候就要用到動態開點線段來節省空間了。( 或者離散化 ) 動態開點線段大概長這樣( 又是隨手 ...

Tue Oct 29 06:31:00 CST 2019 0 506
線段(區間

目錄 為什么要使用線段? 什么是線段? 創建一棵線段 線段的查詢操作 線段的更新操作 為什么要使用線段? 最經典的線段問題:區間染色   有一面牆 ,長度為n,每次選擇一段兒牆進行染色,m次操作后 ...

Sun Apr 12 16:18:00 CST 2020 0 907
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM