国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

CF競賽題目講解_CF487E(線段樹 + 樹鏈剖分+ Tarjan算法)

2022-09-20 10:50 作者:Clayton_Zhou  | 我要投稿

https://codeforces.com/problemset/problem/487/E

?

題意:

已知一張n個點m條邊的圖,每個點有點權,我們有q次操作,有兩種操作,

第一種是改變一個點的點權;第二種是詢問兩點之間可能走過的簡單路徑中的所有點的最小點權。

n,m,q都是1e5量級。


題解:

遇到這種圖上簡單路徑問題應該考慮建出圓方樹,使用Tarjan算法。

每個方點用一個multiset維護權重。

對于每個方點,只維護方點兒子的最小值,不維護方點父親的值。

對于所有方點,不去維護它在圓方樹上的父親,那么對于每一次修改,只會波及它在圓方樹上的方點父親。

在圓方樹上,兩圓點之間的唯一路徑一定經(jīng)過最近公共祖先。

而如果在某一次詢問中兩點之間的最近公共祖先(LCA)為方點,

還需要額外考慮這個點的父親的權值。


最后樹鏈剖分加線段樹維護最小值。


CF競賽題目講解_CF487E(線段樹 + 樹鏈剖分+ Tarjan算法)的評論 (共 條)

分享到微博請遵守國家法律
阿坝县| 扎兰屯市| 雅江县| 神池县| 通州区| 博兴县| 个旧市| 客服| 淮南市| 定结县| 阜新市| 武鸣县| 贡山| 厦门市| 天柱县| 乌鲁木齐市| 汶川县| 绥棱县| 忻城县| 开远市| 闸北区| 凤阳县| 沂南县| 新丰县| 丰顺县| 防城港市| 西充县| 安顺市| 银川市| 互助| 桃园市| 横山县| 旬邑县| 万山特区| 汶川县| 宕昌县| 郁南县| 丰都县| 烟台市| 东平县| 葫芦岛市|