基環樹,也是環套樹,簡單地講就是樹上在加一條邊。它形如一個環,環上每個點都有一棵子樹的形式。因此,對基環樹的處理大部分就是對樹處理和對環處理。顯然,難度在於后者。 扣環 這是幾乎所有基環樹處理的第一步。扣環的方法多種多樣,各有千秋,反正都是\(O(n)\)的。這里貼一下本人扣環的代碼。這個東西 ...
最近比較系統地練了練基環樹的題,最后在這里總結一波,留一點方法與套路。 首先,基環樹的模型應該是比較明顯的。和樹類比,除了題目中給出一棵樹之類的這種很直接的方式,樹的有關模型,較常見的有根據某個性質,我們可以得到除了根每個點都能找到唯一對應的父親。 而基環樹除了給出 n 個點 n 條邊,比較明顯的有每個點對應了一個出點,這樣就構成了一棵基環樹森林。 大概除了毒瘤題之外,基環樹上做做dp就差不多了。 ...
2018-07-25 14:18 1 875 推薦指數:
基環樹,也是環套樹,簡單地講就是樹上在加一條邊。它形如一個環,環上每個點都有一棵子樹的形式。因此,對基環樹的處理大部分就是對樹處理和對環處理。顯然,難度在於后者。 扣環 這是幾乎所有基環樹處理的第一步。扣環的方法多種多樣,各有千秋,反正都是\(O(n)\)的。這里貼一下本人扣環的代碼。這個東西 ...
淺談基環樹(環套樹) 本篇隨筆簡單講解一下算法競賽中的基環樹。也叫環套樹。 一、基環樹概念 其實我個人更喜歡叫它基環樹。更好理解。 它的標准定義是:具有N個點N條邊的連通圖。 如果不保證聯通,它就會成為基環樹森林。 上張圖直觀理解一下。 這就是一棵基環樹。 如果我們把中間 ...
基環樹:無向圖,一個環,環上每個點都是樹根 完備的扣環方法(可以扣二元環): 例1:BZOJ 1791 思路:對於每個基環樹,求出直徑,然后加起來 基環樹求直徑方法,將基環樹的環扣出來,求出以環上每個點為根節點的樹的直徑以及深度,然后在環上求邊權前綴和,枚舉j ...
題目描述 A subway scheme, classic for all Berland cities is represented by a set of n stations connecte ...
用處 沒用我學這東西干嘛 快速查詢一個數是否可以被一堆數異或出來 快速查詢一堆數可以異或出來的最大/最小值 快速查詢一堆數可以異或出來的第k大值 這么點? 還有點性質在下面 可能有點用 性質 原數列里的任何一個數都可以通過線性基里的數異或表示出來 線性基里任意 ...
介紹一個小科技,三元環計數,利用復雜度分析證明暴力求解是科學的。 具體問題就是,給定一張 $n$ 個點,$m$ 條邊的簡單無向圖,求解無序三元組 $(i,j,k)$ 的數量,其中滿足存在邊 $(i,j), (j,k),(i,k)$。 我們先把無向圖轉成有向圖,並給每個點定義一個雙關 ...
用數據結構亂堆樹套樹的方法來解決這類問題。這類樹套樹解法以碼量大和難調試著稱。 通過用一種(棵?)數據 ...
一 問題描述 約瑟夫環問題的基本描述如下:已知n個人(以編號1,2,3...n分別表示)圍坐在一張圓桌周圍。從編號為1的人開始報數,數到m的那個人出列;他的下一個人又從1開始報數,數到m的那個人又出列;依此規律重復下去,要求找到最后一個出列的人或者模擬這個過程。 二 問題解法 在解決這個問題 ...