99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

LCA最近公共祖先算法詳解:倍增法、Tarjan離線與歐拉序RMQ選型指南

LCA最近公共祖先算法詳解:倍增法、Tarjan離線與歐拉序RMQ選型指南 1. 從一次線上故障說起為什么LCA值得你花時(shí)間搞懂去年幫一個(gè)朋友排查他們內(nèi)部工具的一個(gè)性能問題場景很典型一個(gè)組織架構(gòu)樹大概三萬多節(jié)點(diǎn)每次要計(jì)算兩個(gè)員工在組織樹里的最近共同上級。他們最初的實(shí)現(xiàn)是暴力往上爬——把A的所有祖先塞進(jìn)一個(gè)集合然后B從自己開始往上走遇到的第一個(gè)在集合里的節(jié)點(diǎn)就是答案。單次查詢看著不慢幾十毫秒但架不住前端一個(gè)頁面要批量算幾百對頁面直接卡到轉(zhuǎn)圈。這個(gè)問題的本質(zhì)就是LCALowest Common Ancestor最近公共祖先。聽起來像是算法競賽里的東西但只要你處理過任何樹形結(jié)構(gòu)——組織架構(gòu)、文件目錄、DOM節(jié)點(diǎn)、分類體系、依賴關(guān)系圖——你遲早會撞上它。而且一旦數(shù)據(jù)量上去暴力解法就會原形畢露。這篇內(nèi)容我打算把LCA這件事從頭到尾講透。不是那種背個(gè)倍增模板就完事的講法而是把為什么會有多種解法、每種解法到底在權(quán)衡什么、什么場景該選哪個(gè)、寫的時(shí)候哪里最容易翻車這些真正影響你落地的東西說清楚。適合已經(jīng)會寫基礎(chǔ)樹遍歷、但一遇到樹上路徑查詢就發(fā)怵的開發(fā)者也適合想系統(tǒng)梳理一遍這塊知識的老手。看完你應(yīng)該能做到拿到一個(gè)問題先判斷它是不是LCA再根據(jù)數(shù)據(jù)規(guī)模和查詢次數(shù)直接選出合適的方案而不是無腦套模板。2. LCA到底在解決什么問題把共同祖先翻譯成人話2.1 用家族樹理解最近公共祖先先把這個(gè)概念用最樸素的方式說清楚。想象一棵家族樹根節(jié)點(diǎn)是最老的祖先往下每一層是下一代。現(xiàn)在給你兩個(gè)人問他倆血緣關(guān)系最近的那個(gè)共同長輩是誰注意最近兩個(gè)字是關(guān)鍵。往上數(shù)所有共同的長輩都算公共祖先但我們要的是**深度最大離他倆最近**的那一個(gè)。比如你和你堂哥你們的爺爺是LCA但曾祖父也是共同祖先只不過曾祖父更遠(yuǎn)不是最近的。形式化一點(diǎn)給定一棵有根樹對于節(jié)點(diǎn)u和vLCA(u, v)是同時(shí)滿足是u的祖先且是v的祖先的節(jié)點(diǎn)中深度最大的那個(gè)。這里祖先通常包含節(jié)點(diǎn)自己——也就是說如果u本身就是v的祖先那LCA就是u。這個(gè)約定很重要很多實(shí)現(xiàn)細(xì)節(jié)都跟它有關(guān)。2.2 為什么暴力爬樹會崩復(fù)雜度賬要算清楚最直覺的做法有兩種。第一種是剛才說的集合法把u到根的路徑全標(biāo)記然后v往上走找第一個(gè)標(biāo)記點(diǎn)。第二種是先把兩個(gè)節(jié)點(diǎn)提到同一深度然后一起往上走直到相遇。這兩種做法單次查詢的復(fù)雜度都是O(樹高)。問題就出在這個(gè)樹高上。如果樹比較平衡高度是log級別那還行但現(xiàn)實(shí)中的樹經(jīng)常退化成一條鏈——比如一個(gè)層層審批的組織、一個(gè)深度嵌套的目錄、一條長依賴鏈。這時(shí)候樹高就是節(jié)點(diǎn)數(shù)n單次查詢O(n)查詢m次就是O(nm)。三萬個(gè)節(jié)點(diǎn)、幾百次查詢直接就是千萬級操作卡頓是必然的。所以LCA的核心矛盾就一句話能不能把單次查詢從O(樹高)壓到O(log n)甚至O(1)代價(jià)是預(yù)處理。后面講的所有算法本質(zhì)上都是在這條權(quán)衡線上找不同的位置。2.3 哪些真實(shí)場景會用到LCA別以為這只是刷題用的。我梳理幾個(gè)實(shí)際會碰到的組織架構(gòu)/權(quán)限系統(tǒng)判斷兩個(gè)員工的共同上級用于審批流、權(quán)限繼承、匯報(bào)關(guān)系展示。文件系統(tǒng)求兩個(gè)路徑的最近公共目錄做相對路徑計(jì)算、文件同步的差異定位。前端DOM操作找兩個(gè)節(jié)點(diǎn)的最近公共父節(jié)點(diǎn)用于事件委托、選區(qū)處理、虛擬DOM diff。版本控制/依賴分析在提交歷史或依賴樹里找共同基點(diǎn)判斷分支從哪分叉。生物信息學(xué)進(jìn)化樹里找物種的共同祖先。網(wǎng)絡(luò)路由在某些樹形拓?fù)淅镎夜餐嫌喂?jié)點(diǎn)。看出來了吧只要你的數(shù)據(jù)是樹形或者能轉(zhuǎn)成樹形LCA就是個(gè)繞不開的基礎(chǔ)操作。理解了它等于拿到了一把處理樹形查詢的萬能鑰匙。3. 倍增法最通用的LCA解法也是面試最愛問的3.1 倍增的核心思想用二進(jìn)制跳躍代替一步步爬倍增法Binary Lifting是我最推薦的入門方案因?yàn)樗ㄓ?、好寫、好調(diào)而且能順帶解決一堆衍生問題比如求路徑上第k個(gè)祖先、路徑長度等。它的核心思想特別巧妙與其一步一步往上爬不如一次跳2的冪次步。就像你要走1000米不會一米一米挪而是先走512米、再256米……用二進(jìn)制拆分快速到達(dá)。具體做法是預(yù)處理一個(gè)跳表up[i][j]表示節(jié)點(diǎn)i往上跳2^j步后到達(dá)的祖先。這個(gè)表可以遞推出來up[i][0] parent[i] // 跳1步就是父節(jié)點(diǎn) up[i][j] up[ up[i][j-1] ][j-1] // 跳2^j步 先跳2^(j-1)再跳2^(j-1)第二行的遞推是整個(gè)算法的靈魂。它把跳一大步拆成跳兩小步從而能用已經(jīng)算好的小步結(jié)果推出大步結(jié)果。這就是典型的動(dòng)態(tài)規(guī)劃思想也是倍增法名字的由來。3.2 預(yù)處理一遍DFS把跳表建起來預(yù)處理分兩步。第一步是DFS/BFS求出每個(gè)節(jié)點(diǎn)的深度depth[i]和直接父節(jié)點(diǎn)parent[i]。第二步就是按上面的遞推式填up表。關(guān)于j的上界取LOG ceil(log2(n)) 1就夠了。因?yàn)闃渥罡遪層任何跳躍需求都能用不超過log2(n)位的二進(jìn)制表示。多留一位是防止邊界越界。import sys sys.setrecursionlimit(300000) def preprocess(n, adj, root): LOG (n).bit_length() # 等價(jià)于 ceil(log2(n1)) depth [0] * (n 1) up [[0] * LOG for _ in range(n 1)] # 迭代式DFS避免遞歸爆棧 parent [0] * (n 1) order [] stack [root] visited [False] * (n 1) visited[root] True while stack: u stack.pop() order.append(u) for v in adj[u]: if not visited[v]: visited[v] True parent[v] u depth[v] depth[u] 1 stack.append(v) # 填跳表 for i in range(1, n 1): up[i][0] parent[i] for j in range(1, LOG): for i in range(1, n 1): up[i][j] up[ up[i][j-1] ][j-1] return depth, up, LOG這里有個(gè)實(shí)操細(xì)節(jié)值得說我強(qiáng)烈建議用迭代式DFS而不是遞歸。遞歸寫起來是簡潔但樹一深比如退化成鏈Python默認(rèn)遞歸深度1000直接爆棧C雖然棧大一些但幾萬層也懸。迭代式雖然代碼長一點(diǎn)但穩(wěn)。這個(gè)坑我踩過不止一次線上環(huán)境可不會給你調(diào)遞歸深度的機(jī)會。3.3 查詢先對齊深度再一起往上跳查詢LCA(u, v)分兩個(gè)階段邏輯非常清晰階段一把深的那個(gè)提到和淺的一樣深。假設(shè)depth[u] depth[v]那就把u往上跳depth[u] - depth[v]步。這個(gè)差值用二進(jìn)制拆解對應(yīng)到跳表上就是如果差值的第j位是1就跳2^j步。階段二如果此時(shí)u v說明v本來就是u的祖先直接返回。否則兩個(gè)節(jié)點(diǎn)一起往上跳從大到小嘗試。關(guān)鍵技巧是只要跳完之后兩個(gè)節(jié)點(diǎn)還不相等就跳。這樣最后一定會停在LCA的正下方再往上一步就是答案。def lca(u, v, depth, up, LOG): if depth[u] depth[v]: u, v v, u # 階段一對齊深度 diff depth[u] - depth[v] for j in range(LOG): if diff (1 j): u up[u][j] if u v: return u # 階段二一起往上跳 for j in range(LOG - 1, -1, -1): if up[u][j] ! up[v][j]: u up[u][j] v up[v][j] return up[u][0]階段二那個(gè)從大到小的循環(huán)方向特別重要必須從高位往低位試。因?yàn)槲覀円M可能跳得遠(yuǎn)但又不能跳過LCA。從大往小試能保證最后停在最近的位置。如果從小到大試會跳得不夠遠(yuǎn)邏輯就錯(cuò)了。這個(gè)細(xì)節(jié)很多人第一次寫會搞反。3.4 倍增法的復(fù)雜度與適用邊界預(yù)處理時(shí)間O(n log n)空間O(n log n)單次查詢O(log n)。這個(gè)復(fù)雜度對于絕大多數(shù)場景都夠用了。它的優(yōu)勢是通用性極強(qiáng)不要求樹是靜態(tài)的雖然動(dòng)態(tài)更新跳表比較麻煩能處理任意形態(tài)的樹還能順便支持求第k個(gè)祖先這類操作。缺點(diǎn)是空間是n log n如果n到了百萬級內(nèi)存會有點(diǎn)吃緊。提示如果n特別大比如10^6以上而查詢次數(shù)不多其實(shí)暴力法反而更劃算。別迷信高級算法選型要看具體數(shù)據(jù)規(guī)模。4. Tarjan離線算法查詢多、樹不動(dòng)時(shí)的效率之王4.1 離線思維把所有查詢攢起來一起算倍增法是在線的——來一個(gè)查詢答一個(gè)。但如果你的場景是一次性拿到所有查詢?nèi)缓笈砍鼋Y(jié)果那Tarjan離線算法往往更快。Tarjan的核心是DFS 并查集。它利用DFS的回溯特性在遍歷樹的過程中順便把所有查詢都解決了。單次查詢的均攤復(fù)雜度接近O(1)整體是O(n m·α(n))其中α是并查集的反阿克曼函數(shù)實(shí)際可以當(dāng)成常數(shù)。這個(gè)思路的巧妙之處在于它把查詢這件事融進(jìn)了遍歷里而不是遍歷完再單獨(dú)查。對于查詢量巨大的場景比如m和n同量級甚至更大這個(gè)優(yōu)勢非常明顯。4.2 并查集在這里扮演什么角色理解Tarjan的關(guān)鍵是搞懂并查集維護(hù)的是什么。在DFS過程中每個(gè)節(jié)點(diǎn)有三種狀態(tài)未訪問、正在訪問在遞歸棧里、已訪問完子樹處理完畢。并查集維護(hù)的是已訪問完的節(jié)點(diǎn)的集合并且每個(gè)集合的代表元指向它當(dāng)前能追溯到的、還在遞歸棧里的那個(gè)祖先。當(dāng)DFS訪問到節(jié)點(diǎn)u處理所有跟u相關(guān)的查詢(u, v)時(shí)如果v還沒訪問跳過等以后v被訪問時(shí)再處理這對查詢。如果v已經(jīng)訪問完了那么v所在并查集集合的代表元就是LCA(u, v)。為什么因?yàn)関已經(jīng)處理完說明v的整棵子樹都遍歷過了而u還在棧里說明u是v的某個(gè)祖先方向上的節(jié)點(diǎn)。此時(shí)v能追溯到的、還在棧里的最深祖先恰好就是它和u的分叉點(diǎn)也就是LCA。4.3 完整實(shí)現(xiàn)與關(guān)鍵細(xì)節(jié)def tarjan_lca(n, adj, root, queries): # queries[u] [(v, query_id), ...] parent list(range(n 1)) # 并查集 ancestor [0] * (n 1) # 集合代表元對應(yīng)的祖先 visited [False] * (n 1) answer [0] * len(queries) def find(x): while parent[x] ! x: parent[x] parent[parent[x]] # 路徑壓縮 x parent[x] return x def dfs(u): visited[u] True ancestor[find(u)] u for v in adj[u]: if not visited[v]: dfs(v) parent[find(v)] find(u) # 合并子樹到u ancestor[find(u)] u # 處理與u相關(guān)的查詢 for (v, qid) in queries[u]: if visited[v]: answer[qid] ancestor[find(v)] dfs(root) return answer幾個(gè)容易翻車的點(diǎn)第一ancestor的更新時(shí)機(jī)。每次合并完子樹后要把合并后集合的ancestor重新指向u。因?yàn)楹喜⒑蟠碓赡茏兞瞬桓戮蜁玫藉e(cuò)誤的祖先。第二查詢要存雙向。因?yàn)樘幚?u,v)時(shí)可能v還沒訪問得等v被訪問時(shí)從v那邊再處理一次。所以queries[u]和queries[v]都要存這條查詢。第三遞歸深度問題。跟倍增法一樣深樹會爆棧。生產(chǎn)環(huán)境建議改迭代或者手動(dòng)加大??臻g。4.4 什么時(shí)候該選Tarjan而不是倍增判斷標(biāo)準(zhǔn)很簡單維度倍增法Tarjan離線查詢模式在線來一個(gè)答一個(gè)離線必須預(yù)先知道所有查詢單次查詢O(log n)均攤O(α(n))≈O(1)預(yù)處理O(n log n)無獨(dú)立預(yù)處理空間O(n log n)O(n m)實(shí)現(xiàn)難度中等中等偏上并查集易錯(cuò)適用場景查詢少、需在線查詢海量、可離線如果你的查詢次數(shù)m遠(yuǎn)大于nTarjan的均攤優(yōu)勢會非常明顯。但如果查詢是流式的、必須即時(shí)回答那只能選倍增。選型的第一原則永遠(yuǎn)是先搞清楚你的查詢模式。5. 歐拉序 RMQ把LCA變成區(qū)間最值問題5.1 一個(gè)漂亮的轉(zhuǎn)化LCA等價(jià)于區(qū)間最小值這是我覺得LCA里最優(yōu)雅的一個(gè)思路。它把樹上問題轉(zhuǎn)化成了數(shù)組上的區(qū)間查詢問題。做法是對樹做一次DFS記錄歐拉序也叫DFS序的擴(kuò)展版——每次進(jìn)入一個(gè)節(jié)點(diǎn)記一次每次從子樹返回父節(jié)點(diǎn)時(shí)也記一次。這樣得到的序列長度是2n-1。同時(shí)記錄每個(gè)節(jié)點(diǎn)在序列中第一次出現(xiàn)的位置first[u]。關(guān)鍵結(jié)論LCA(u, v)就是歐拉序中first[u]到first[v]這段區(qū)間里深度最小的那個(gè)節(jié)點(diǎn)。為什么因?yàn)閺膗走到v在歐拉序上必然經(jīng)過它們的LCA而且LCA是這段路徑上深度最小的點(diǎn)。這個(gè)性質(zhì)把LCA問題完美地轉(zhuǎn)化成了**RMQ區(qū)間最小值查詢**問題。5.2 稀疏表ST表實(shí)現(xiàn)O(1)查詢既然變成了RMQ那就可以用經(jīng)典的ST表Sparse Table來做到O(1)查詢。ST表的預(yù)處理是O(n log n)查詢O(1)。import math def build_euler(n, adj, root): euler [] # 歐拉序存節(jié)點(diǎn) depth_arr [] # 對應(yīng)深度 first [0] * (n 1) visited [False] * (n 1) def dfs(u, d): visited[u] True first[u] len(euler) euler.append(u) depth_arr.append(d) for v in adj[u]: if not visited[v]: dfs(v, d 1) euler.append(u) depth_arr.append(d) dfs(root, 0) return euler, depth_arr, first def build_st(depth_arr): m len(depth_arr) LOG m.bit_length() # st[i][j] 存區(qū)間 [i, i2^j-1] 中深度最小的節(jié)點(diǎn)在depth_arr中的下標(biāo) st [[0] * LOG for _ in range(m)] for i in range(m): st[i][0] i for j in range(1, LOG): for i in range(m - (1 j) 1): left st[i][j-1] right st[i (1 (j-1))][j-1] st[i][j] left if depth_arr[left] depth_arr[right] else right return st def query_lca(u, v, first, depth_arr, st, euler): l, r first[u], first[v] if l r: l, r r, l length r - l 1 k length.bit_length() - 1 left st[l][k] right st[r - (1 k) 1][k] idx left if depth_arr[left] depth_arr[right] else right return euler[idx]5.3 歐拉序方案的取舍這個(gè)方案的優(yōu)勢是查詢O(1)比倍增的O(log n)還快。而且思路清晰一旦理解了歐拉序的性質(zhì)代碼其實(shí)不難寫。但它有幾個(gè)明顯的代價(jià)空間更大歐拉序長度是2n-1ST表又是(2n) log(2n)比倍增的n log n大一倍左右。預(yù)處理常數(shù)大建ST表的雙重循環(huán)實(shí)際跑起來比倍增的預(yù)處理慢。只適合靜態(tài)樹樹一變整個(gè)歐拉序和ST表都要重建。所以我的經(jīng)驗(yàn)是如果查詢量極大且樹完全靜態(tài)歐拉序ST表是最優(yōu)解否則倍增法更省心。別為了那點(diǎn)查詢速度提升把代碼復(fù)雜度拉高一大截維護(hù)成本也是成本。注意歐拉序的DFS同樣有遞歸深度問題。而且歐拉序長度是2n如果n很大光是存這個(gè)序列就要不少內(nèi)存選型前先估一下。6. 四種解法橫向?qū)Ρ纫粡埍韼湍阕鲞x型決策前面講了四種主流方案這里做個(gè)系統(tǒng)對比方便你直接查表決策。方案預(yù)處理單次查詢空間在線/離線最適合的場景暴力爬樹O(1)O(樹高)O(n)在線樹淺、查詢極少倍增法O(n log n)O(log n)O(n log n)在線通用首選查詢中等Tarjan離線無均攤O(α(n))O(nm)離線查詢海量、可離線歐拉序STO(n log n)O(1)O(n log n)在線查詢極多、樹靜態(tài)選型的決策鏈路我一般是這么走的第一步看查詢模式。流式在線查詢排除Tarjan能批量離線Tarjan值得考慮。第二步看數(shù)據(jù)規(guī)模。n小幾千以內(nèi)且查詢少暴力法最省事別過度設(shè)計(jì)。n大且查詢多上倍增或歐拉序。第三步看樹是否靜態(tài)。樹會動(dòng)態(tài)變化倍增法改起來相對可控雖然也麻煩歐拉序基本要重建。第四步看查詢次數(shù)。查詢次數(shù)遠(yuǎn)超n歐拉序的O(1)優(yōu)勢才體現(xiàn)得出來否則倍增的O(log n)完全夠用。我見過太多人一上來就寫歐拉序ST表結(jié)果數(shù)據(jù)規(guī)模才幾千純屬殺雞用牛刀代碼還容易寫錯(cuò)。選型要匹配問題規(guī)模這是工程思維和刷題思維最大的區(qū)別。7. 實(shí)戰(zhàn)中那些文檔不會告訴你的坑7.1 根節(jié)點(diǎn)的父節(jié)點(diǎn)處理這是最經(jīng)典的坑。根節(jié)點(diǎn)沒有父節(jié)點(diǎn)那up[root][0]填什么填0假設(shè)節(jié)點(diǎn)編號從1開始還是填自己填0的話如果查詢時(shí)不小心跳到了0后續(xù)up[0][j]全是0可能掩蓋邏輯錯(cuò)誤。填自己的話跳過頭會原地打轉(zhuǎn)。我的建議是填0并且在查詢邏輯里保證永遠(yuǎn)不會真正用到0這個(gè)越界值——因?yàn)閷R深度和一起跳的過程理論上不會讓節(jié)點(diǎn)跳到根之上。但為了保險(xiǎn)可以在填表時(shí)把up[0][j]都設(shè)成0讓越界訪問有個(gè)確定的兜底。7.2 深度對齊時(shí)的循環(huán)方向階段一對齊深度時(shí)for j in range(LOG)從小到大還是從大到小其實(shí)都可以因?yàn)槲覀兪前炊M(jìn)制位判斷的每一位獨(dú)立。但階段二一起跳的時(shí)候必須從大到小。這兩個(gè)循環(huán)方向不一樣很多人寫著寫著就混了。記住口訣對齊深度看位一起跳看大小。7.3 多組測試數(shù)據(jù)的初始化如果是在競賽或批量處理場景多組測試數(shù)據(jù)之間一定要徹底重置所有數(shù)組。我見過因?yàn)閡p表沒清干凈上一組數(shù)據(jù)殘留導(dǎo)致答案錯(cuò)誤的案例。Python里重新分配數(shù)組最省心C里記得memset或者重新構(gòu)造。7.4 節(jié)點(diǎn)編號從0還是從1開始這個(gè)看似小事實(shí)則影響巨大。從1開始的話0可以當(dāng)哨兵從0開始的話就沒有天然的哨兵值了。我個(gè)人的習(xí)慣是統(tǒng)一從1開始編號把0留作哨兵能省掉很多邊界判斷。如果輸入是從0開始的讀入時(shí)統(tǒng)一加1。7.5 遞歸改迭代的通用套路前面反復(fù)提到遞歸爆棧。改迭代的通用做法是手動(dòng)維護(hù)一個(gè)棧棧里存(節(jié)點(diǎn), 父節(jié)點(diǎn), 狀態(tài))狀態(tài)標(biāo)記是第一次訪問還是回溯?;蛘吒唵蜗扔肂FS求出遍歷順序和父節(jié)點(diǎn)再按逆序處理回溯邏輯。對于倍增法其實(shí)只需要父節(jié)點(diǎn)和深度BFS一遍就夠了根本不需要DFS。這個(gè)優(yōu)化能同時(shí)解決爆棧和效率問題。8. 從LCA延伸出去幾個(gè)高頻衍生問題搞懂了LCA很多樹上查詢問題都能順手解決。這里列幾個(gè)最常見的延伸算是給你指個(gè)方向。樹上兩點(diǎn)距離。有了LCA距離公式就是depth[u] depth[v] - 2 * depth[lca(u,v)]。這個(gè)公式極其常用路徑長度、樹上最遠(yuǎn)點(diǎn)對之類的問題都靠它。樹上路徑第k個(gè)節(jié)點(diǎn)。從u到v的路徑上第k個(gè)點(diǎn)先判斷k是否超過u到LCA的距離分兩種情況用倍增跳。這是倍增法跳表能力的直接應(yīng)用。判斷一個(gè)點(diǎn)是否在兩點(diǎn)路徑上。點(diǎn)w在u-v路徑上當(dāng)且僅當(dāng)lca(u,w)w且lca(w,v)ww是u的祖先且是v的祖先方向或者更準(zhǔn)確地用距離公式驗(yàn)證。這類判斷在路徑覆蓋、樹上差分里很常見。樹上差分。給u到v的路徑上所有點(diǎn)加一個(gè)值可以用差分diff[u] 1, diff[v] 1, diff[lca] - 1, diff[parent(lca)] - 1最后子樹求和。這個(gè)技巧配合LCA能解決一大批路徑統(tǒng)計(jì)問題。這些延伸的共同點(diǎn)是LCA是它們的地基。地基打牢了上面的樓怎么蓋都行。所以別急著刷各種花哨的樹上問題先把LCA這幾種解法吃透后面會輕松很多。我個(gè)人在實(shí)際項(xiàng)目里的體會是真正高頻用到的其實(shí)就是倍增法這一種因?yàn)樗ㄓ?、在線、好維護(hù)。Tarjan和歐拉序更像是特定場景的優(yōu)化手段知道原理、需要時(shí)能撿起來就行不必強(qiáng)求每種都背得滾瓜爛熟。把一種方案寫到閉著眼睛都不出錯(cuò)比每種都半懂不懂要值錢得多。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
另类小说五月天| OUMEIRIHANCHENGREN| 五月色丁香国产在线视频| 国产成人综合网| 激情久久综合网| 东京热免费视频网站| av大香蕉| 亚卅毛片| 26UUU欧美| 婷婷中文字幕| 色吊丝永久访问网址| www.婷婷| 亚洲成人AV在线观看| www.色窝| 五月丁香美女| 色五月91| 亚洲人成网站999综合| 五月丁香91| 五月婷婷就去色| 婷婷中文字幕欧美| 狠狠操狠狠操AV| 丁香五月色欲| 26UUU精品一区二区c〇m| 久99综合婷婷| 99久久精彩视频| 中文字幕欧美日韩VA免费视频| 国产密乳av一区二区三区四区| 91狠狠综合久久久久久| PORNY九色9l自拍视频成人| 99久久9| 天天做天天爱天天要| 精品婷婷五| 久久9RE热视频精品98| 激情五月激情综合网| 色丁香五月| 丁香婷五月天| 插插网爽妇五月丁香| 中文字幕在线播放视频| 在线天堂9| 五月丁香婷久久| 久久99精品视频| 91se在线视频| 五月天综合久久| 思思re99视频在线观看| 激情五月,激情综合网| 天天爽天天爽天天爽天天爽天天爽| 热热99爱爱| 丁香五月桃花在线激情综合| 日本A片一区| 无码人妻少妇色欲AV一区二区| 99热这里只有精品中文字幕| www.五月婷婷久久.com| 五月婷婷播| 97碰久久| 成人av在线网址| 久久一级AV| 九九热在线99| 99ri视频| 91人久| 草草夜夜操| av九九| 991精品在线视频| 思思热久久久久思思热| 狠狠狠五月婷婷六月丁香| 色色免费网站| 丁香五月天色综合| 人人添人人| 亚洲日韩人妻操逼| 婷婷色播色五月五色五月天色妇| 成人五月天色天堂| 五月婷婷免费在线观看| 久久九九在线视频| 丁香婷婷色五月合集| 日本人妻丁香婷婷久久寝取熟女五月| 2025天天爽天天摸| 人人爱国产| 九九热只有精品| 久久国产精品乱子伦_靑青草…| 九色激情| 丁香五月久久社区| 99热碰碰热| 伊人久久大香线蕉AV最新午夜| 五月婷婷精品| 久久九九99| 五月久久网| 激情综合网激情五月天| 激情综合自拍五月婷婷色五月| 精品九九在线观看视频| 操逼在线视频| 狠狠色激情综合| 色婷婷激情小说网| 综合婷婷都市激情| 五月丁香婷婷免费视频| 五月婷婷天| 丁香五月婷婷五月| 欧美丁香五月夫妻天| 丁香在线视频| 亚洲激情在线| 色五月婷婷天堂| 射久久丁香五月| A级毛片高清免费不卡播放谢谢谢谢| 99啪啪网| 成人狠狠成人狠狠成人狠狠成人狠狠 | 六月丁香婷婷色69| 五月激情基地| av在线免费播放| 天天插天天日| 五月天色五月| 天天操综合网| 91丁香| 色在线99| 激情五月婷婷中文字幕| 97婷婷五月天| 五月丁香六月综合激情| 日噜噜色| 99热国产这里只有| 丁香婷婷激情| 无码 av电影| 十区av| 看婷婷五月天网| www.伊人天堂偷偷婷婷| 伊人丁香五月| 婷婷97碰碰| 97香蕉碰碰人妻国产欧美| 伊人激情| 秋霞成人毛片一级A片| 色五月五月天| 激情五月综合| 久热伊人9| 亚洲avjiujiur91| 第一区久久网站| 色女人久久| 内射干少妇亚洲69XXX| 大香久久综合网| 91久久99久久91熟女精品| 啪啪啪五月天| 成人做爰A片免费看网站找不到了| 97操碰人免费| 99热爱爱干干日| 久久激情视频| 五月激情天| 激情五月天综合网| 99视频精品| 5月丁香综合图区| 婷婷干六月综合旧址| WWW,五月| 99色视频在线| Www.se.久久| 亚洲区,视频区,视频区免费| 在线另类视频| 五月丁香婷草| 五月婷婷综合精品| 大香蕉在线99热| 欧美日韩99| 激情五月婷婷丁香| 99久操视频| 亚洲成人色五月婷婷综合| 俺去也在线www色官网| 婷婷久久亚洲| 91干在线视频| 婷婷五月天手机版视频| 丁香五月天视频| 久久精品婷婷五月丁香| 婷婷五月花| 大地9中文在线观看免费高清| 久99视频在线观看| 开心五月婷婷婷美女| 一本道在线电影| 五月天婷婷激情在线色图| 人妻系列久久久久久久久久久| 五月丁香激情综合啪啪| 91久久网站| 五月丁香婷婷基地| 成人在线网| 国产三级在线播放| 天天射夜夜爽| 成人网站在线观看视频| 九九婷婷综合| 色五月综合婷婷| 日本三级日本三级99| 国产操B视频| 99热只有这里有精品| 色和综合网| 婷婷五月天六月综合| 五月天色社区| 婷婷亚洲丁香五月| 激情99| 丁香六月婷婷综合色| 久久伊人大香蕉| 久久久欧美精品sm网站| 丁香五月性爱| 久一这里有精品国产| 婷婷五月综合色拍| 五月综合亚洲色| 性欧美日本| 玖玖色资源| 色噜噜狠噜噜视频| 丁香五月激情啪| 啪啪综合| 久久综合热17c| 99热成人| 丁香婷婷婷五月| 激情网 久久| 毛片新网地| 久久精品99国产精品日本| 99亚洲综合| 国产成人精品亚洲线观看| 在线99热| 久久久久这里只有精品| 中文AV在线播放| caop在线视频| 噜噜噜噜噜久| 91干婷婷| 婷婷五月激情综合| 丁香五月综合久久八| 香蕉AV777XXX色综合一区| 色必久悠悠影院| 色五月天激情| 五月婷综合激情| 婷婷少妇激情| 九九视频这里只有精品在线播放 | 免费V片在线| 天堂AV在线看| 激情综合无码| 91综合视频丁香| 五月天com| 亚洲AV综合在线观看| 日狠狠| 亚洲综合五月天综合| 99热在线极品极品| www.zbzhongsen.com| 色婷婷五月基地在线| 97超喷视频在线观看| 婷婷五月天电影区小说区| 最新无毒无码AV| 丁香婷婷视频一区二区| 丁香婷最新动态| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 九九婷婷综合| 97韩国久久电影院| 99色区| 中文超碰视在线| 91九色国产熟女| 美妞av| 五月丁香天堂| 亚洲精品99| 丁香五月婷婷激情中文| XXXX岛国| 中文字幕视频在线播放| 亚洲黄色操逼| 粉嫩AV久久一区二区三区| 色噜噜在线| 五月激情网站| 青青青在线视频国产| 开心激情网五月| 99色色热| 翔田千里 50岁 无码| 伊人久久丁香狠狠婷婷综合香蕉| 久久综合首页| av久热| 久久视9精| 丁香色婷婷| 66精品成人免费网站在线观看| 色婷婷操逼| 伊人激情综合| 亚洲网站观看视频| 五月丁香| 日日夜夜婷婷| www,色婷婷| 亚洲丁香五月| www色婷婷久久综合久色 | 婷色五月天| 激情六月日韩| 天天操天天草天天草天天| 97在线视频观看| 婷婷丁香色性爱| 九九视频在线观看视频6| 日亚二欧美| 中文网av| 伊人久久五月天| 色综合色综合婷婷热| 日美三级| 久久99免费视频网站| www,五月丁,com| 色热久| 国产偷人爽久久久久久老妇APP| 亚洲色频| 婷婷涩五月天综合| 中文无码精品一区二区三区| 五月丁香综合久久| 亚洲激情无码久久| 大香蕉人人人| 欧美性爱日韩性爱| 综合色影院| 色婷婷狠狠18yy| 欧美电影在线观看| 99热99色| 色狠狠色噜噜AV天堂五区| 婷婷天天日婷婷| 精品久久久999| 五月婷婷在线免费观看| 天天做天天爽| 色婷婷五月色| 日日操日日撸| 啪啪啪综合网| 激情综合五| 精品久久久人妻| 91肏| 99热这里全都是精品| 91成人电影| 五月丁香六月婷| 五月花婷婷| 五月天婷婷无码视频| 日本操逼九九九九58日本操逼| 激情婷婷丁香色五月| 久久综合天天综合| 99re8在这里只有精品| 激情小说视频图片| 色色射| 婷婷五月俺要去| 日批在线看| 丁香六月天婷婷色| 六月丁香五月亭亭| 丁香六月婷婷色XXXXX| 99在线爽| 狠狠香婷婷五月| 丁香色情五月天| 国内婷婷丁香社区在线播放| 婷婷激情五月综合丁香社| 狠狠色婷婷六月激情网| 久婷五月| 婷婷亚洲色| 99网| 亚洲AVwwwwwww| 丁香六月婷婷缴情欧美| 伊人玖玖综合| 99热这里只有精品268| 99热99思午夜精品| 五月婷婷综合在线观看| 激情五月天com| 综合99视频| 天天干天天干天天干天天干天| 丁香五月激情婷婷婷婷在线观看| 97丁香五月| 激情亚洲婷婷| 最近中文字幕大全免费版在线 | 天天综合网色欲香| 天天色月| 深爱激清网| 91婷婷色五月| 天堂久久丁香| 天天久久狠狠色综合| 婷婷成人在线| 成年人99热| 来吧亚洲综合网| 97人人做| 狠狠色色色| 99在线视频喷水| 丁香九月婷婷综合| 天天操夜夜爱| 丁香五月天社区| 久久婷婷五月| 日韩美一级毛卡片| 亚洲色婷婷激情| 99色色视频| 天天爽天天爽| 91婷婷视频| 久久综合五月天| 激情综合丁| 五月丁香婷中文| 免费无码毛片一区二区A片| 97成人超碰免| 99热人人| 激情五月天网| 狠狠色色色| 久久婷婷五月天懂色| 丁香五月色情| 激情久久久| 99色.com| 色狠狠色噜噜噜a天堂一区| 色色色婷婷五月天| 日曰躁夜夜躁2026| 婷婷97狠狠干| 99九九在线视频| 色丁香五月婷婷| 卡视频1区2区| 人人人va亚洲视频在线| 国产99久久久| 丁香婷婷老司机久操| 热久久77777| 九九人人精品| 丁香婷婷婷五月综合色情| 色婷婷综合视频| 婷婷五月情天| 久久色六月| 婷婷她六月天| 欧美黄色AA片哗啦啦啦| 九九九九无码| 开心五月深爱五月丁香五月激情五月| 成人无码精品1区2区3区免费看| 九九激情视频| 免费视频舔| 五月网网站| 蜜臀av粉嫩av懂色av| 97香蕉碰碰人妻国产欧美| 97男人天堂| 日本色婷婷| 色五月婷婷五月天| 婷五月天六| 五月激情丁香| 99热每日| 一本伊人色婷| 成人综合网站| 五月天色色激情综合| 五月婷婷自拍| 婷婷综合激情| AV网站免费在线| 夜夜爱网站| 色综合五月| 五月天婷婷自拍图片在线观看| 97操碰在线视频| se婷97| 可以直接看的AV网站| 五月丁香婷婷综合网| 91艹人| 狠狠插狠狠| 日本WwW色偷偷丁香花久久久京东热| 精品国产va久| 久久婷青青草原| 五月婷婷六月丁香免费| 天天做天天摸| 伦乱人妻| 日本美女五月天| 超碰伊人碰婷婷五月| 激情小说视频图片网| 玖玖婷婷色欲| 亚洲 小说 欧美 激情 另类| 丰满少妇猛烈A片免费看观看| 97色色婷婷| 五月婷成人网| 爱99干99| 久久99网| 久久久久久久久久久97| 性色视频| 97黑人精品区| 色婷婷影院| 中文字幕+中文在线| 五月丁香六月激情在线| 91精品国产91久久久久青草| 亚洲色啪| 五月丁香六月婷婷亚洲视频| 岛囯综合激情网| 丁香五月色五月婷婷宗合| 任你爽在线视频| 丁香六月色婷婷综合| 丰满老熟妇BBBBB搡BBB| 色色综合日韩| 亚洲综合欧美色丁香婷婷888月图片 | 久草视频大香蕉99| 色99网站| 二区成人视频| 久久久18| 日日操日日干| 激情五月色综合网| 91啪啪视频| 99这里是99在线视频| 免费观看全黄做爰的视频| 亚洲激情综合五月婷婷啪啪| ′久久99一| 成人永久免费视频在线观看| 干亚洲天堂| av九九| 99热在这里只有免费精品| 丁香五月婷婷国产av| 九九婷婷网五月天| 看黄的网站18禁| 夜夜操狠狠操| 婷婷情色激情| 色色综合网站| 日日日日日| 丁香久月| AA片在线观看视频在线播放| 天天天摸夜夜夜玩| 激情婷婷色色| 99热午夜精品| 丁香五月偷拍| 久久婷婷五月| 夜夜操少妇| 任我肏视频精品| 极品人妻VideOssS人妻| 婷婷五月天在线观看av| 丁香五月婷中字幕| 亚洲精品五十一区| 丁香五月婷婷高清| 人妻体体内射精一区二区| 99视频久久| 亚洲性爱99| 可以免费观看的av| 激情综合网五月天| 91操操操| 第四色婷婷日本| 97自拍视频网| 国产精品久久欧美久久一区| 欧美va视频| 人人摸人人干人人做| 超碰大香蕉网| 国产婷婷五月| 亚洲熟妇无码乱子AV电影| 色婷婷成人影片| 久久这里只有精品视频15| 99久久激情视频| 丁香涩涩五月天| 综合久久五月天| 9热成人在线视频| 激情五月天色播| 无码色| 丁香五月亚洲无码| www.色五月.com| 欧美va在线观看| 69精品人人人人| 五月婷婷六月丁香首页| 九九热内射| 综合网亚洲| 色偷偷色婷婷| 亚洲色五月婷婷| 婷婷五月天色综合| 欧洲高清免费久久| 综合五月天天天天天五月| 99热精品在线播放| 色五月色五天色情网| 91人妻九色大屁股| 七月婷婷色香综合网| 激情六月丁| 婷婷干五月综合在线播放| 婷婷色系婷色| 欧美婷婷五月激情| www.精品99| 人妻性爱av网站| 日本啪啪天堂| 大香蕉久艹| 五月丁香花视频| 97色色综合| 性做爰A片免费视频A片直播 | 欧美A级成人婬片免费看理论| 久久婷婷91| 99性爱视频网站| 午夜电影网VA内射| 色婷婷久久综合久色| 四月婷婷五月色综合| 7超碰自拍| 91成人电影| www.婷婷.com| 九九热婷婷| 涩涩婷婷五月| 9色在线视频| 色综合色五月| 99惹在线精品免费观看| 婷婷丁香成人在线视频| 五月天全国最大成人网| 在线观看玖玖资源免费观看| 五月天狠狠草| 狠狠色成人影片| 久久 天天| 91婷婷五月天综合视频| 五月色婷婷激情| 丁香五月婷婷五月天在线| 18av天堂| 六月天六月婷| 五月丁香六月婷婷姐| 丁五月激情视频免费| 99这里有精品| 久久婷婷丁香| 伊人干综合| A在线观看| 五月婷婷丁香五月| 久久综合人妻| 这里只有精品96| 九九久久玖玖爱| 1级欧美日韩| 欧美日韩中国| 亚洲无aV在线中文字幕 | 丁香 久久| 噜噜噜色噜噜| 五月婷婷成人| 天天天干夜夜夜操| 九九99精品视品| 婷婷激情五月视频| 人人爽天天莫| 米奇影视五月天| 久久婷婷色五月| 亚洲秘 无码一区二区三区妃光/1| 丁香五月婷婷亚洲综合精品| 五月天天天色| 色婷婷色综合久久精品V| 人人人操| 99久久99综合| Www99热| 草操网| 天天天天色天天天天天干| 91九色欧美| 中文字幕黄色片| 人人摸人人干| 激情婷婷五月天。| 五月色无码| 欧美婷婷精品激情| 婷婷伊人网| 日韩啪啪自拍| 婷婷五月天国产精品| 国产精品久久久久久五月天加勒比| 丁香五月激情婷婷婷婷在线观看| 婷婷色中文字幕| AV网在线观看| 九九热在视频| 久久婷五月综合色| 激情图片久久| 久久综合66| 五月香婷婷| www.成人婷婷综合| 婷婷五月天丁香花| 国产日韩av片| 六月狠狠综合| 综合激情五月丁香| 午夜激情四射影院| 5月婷婷6月丁香aV| 色五月婷婷五月天| 综合天堂AV久久久久久久| 色九月婷婷综合| 婷婷五月天在婷| 伊人五月天| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 91九色在线视频| 2023天天日夜夜爽| 日韩成人AV在线| 亚洲国产精品VA在线看黑人| 九九Av| 日狠狠| 日韩性爱AV| 97人人操人人爽| 亚洲日日日| 婷婷五月花| 99免费综合网| 久久婷婷综合网| www.色多多婷| 青草久久五月婷伊人| 另类视频一区| 狠狠色丁香婷婷久久综合| 色婷婷色五月另类综合| 九月丁香| 成人五月丁香社区| 九九自拍网| 日韩xx在线| 五月宗合激情网| 国产99久久久国产精品免费看| 丁香五月婷婷五月| 99成人网站| 人人操五月天| 看婷婷五月天网| 五月天丁香综合| 激情九九六月激情免费视频| www,天天干| www.ywav| 91久久综合| 激情 婷婷| 久久的爱大香蕉| 99九九精品| 日本一级淫| 婷婷永久在线| 麻豆观看夏晴子| 中文不卡一二三区| 成人国产欧美大片一区| 五月天婷婷在线观看精品男人| 久色资源| 亚洲 日韩色色| 91狠狠综合久久久| 人妻操逼视频。| 综合激情在线视频| 精品婷婷| www.夜夜| 五月丁香六月综合图| 久久 这里只有精品1| 亚洲精品字幕| 激情综合色婷婷啪啪六月天| 丁香五月熟女| 5月丁香啪啪啪| 五月婷无码| 亚洲视色| 久久婷婷内射| 色欲色香综合网| 99热成人永久免费| 国产精产国品一二三在观看| 另类图片婷婷五月天| ww超碰在线| 我要射综合| 狠狠色婷婷丁香五月| 99热这里只有精品9| 超碰2021| 婷婷五月激情视频在线| 天天综合 99久久婷婷| 欧美综合五月丁香六月婷| 久久三级视频| 国产欧美性成人精品午夜| 久久九九蜜| 久久桃花网色婷婷| 丁香婷婷视频一区二区| 另类激情码| 五月丁香| WWW.桔色成人.COM入口| 3DAV亚洲香蕉久久 一区二区| 五月丁香啪| 99精品在线| 疯狂做受XXXX高潮A片| 99er精品视频| 美腿丝袜AV天堂网| 这里只有精品视频在线| 婷婷丁香综合成人| 久久婷婷五月综合色奶水99啪| 99精品综合视频| 丁香五月天五码婷婷| 九九伦子片| 色综合久久天天综合网| 九九这里精品| 中文av在线观看| 婷婷久久亚洲| 久99热| 色五月六月| 97天堂| 久热精品免费视频4| 激情爱爱网站| 五月丁香六月婷婷免费| www亚洲无码| 天天插综合网| 久久久人妻门| 婷婷丁香五月亚洲欧美| wwww.9免费视频| 99无码黄色视频| 精品,99| 日本九九九九| 超碰A V在线| 99ri在线视频| 婷婷丁香五月亚洲综合网在线视频观看| 五月丁久久| 六月丁香啪啪啪| 性婷婷| 欧美月久久| 五月色综合| 99爱无码| 精品一区二区三区四区五区六区介绍| 激情AV中文| 伊人五月婷婷| 99热这里只要精品免费| 九九综合精品| 激情五月瑟瑟| 人与禽A片啪啪| AV电影在线播放| 久热这里只有精品66| 亚洲欧美成人在线| 久久久.www| 婷婷色综合| 久久9视频欧美| 日日夜夜狠狠操| 日操五月婷| 色综合99| 丁香婷婷综合激情五月色| 五月丁香婷婷狠狠操| 五月天婷婷综合网| 99自拍视频在线| 2025天天日爽| 天天干天天干天天干天天干天| 五月香蕉婷婷| 久热这里只有精品6官网亚洲| 欧美色色色色色色色| 天天做天天爱天天做| va中文资源在线观看| 色综合久久8| 丁香五月婷婷欧美性爱| 无码人妻少妇色欲AV一区二区| 99在线精品观看99| 亚洲久久婷婷| 婷婷激情蜜桃玖玖丁香| 婷婷八月激情| 婷婷五月天成人网| 日韩丁香涩| JAPANRCEP老熟妇乱子伦视频| 99久久久| 丁香五月婷婷超碰在线| 91精品无码| 综合五月丁香六月婷婷| 淫荡工a| 婷婷狠狠操| 99热最新| 色婷在线视频| 色综合久久久综合久久网| 这里只有精品视频在线| 五月丁香六月| 另类精品视频在线观看| 天天免费成年人视频| 五月婷婷五月丁香综合| 激情综合女人网五月播播| 国产激情久久久| 黄网网站在线播放| 天天色播| 五月色婷婷亚洲| 爱之国产色情综合| 91久久久久久久91| 国产真实乱了老女人视频| 五月综合视频| 久久婷婷五月综合伊人| 天天操综合网| 国产99久久久国产精品免费看| 色五月天在线| 五月丁香婷婷成人综合网| 综合图片色色| 五月婷婷免费视频| 五月天精品综合在线| 丁香婷婷色五月天| 五月丁香六月综合基地| www.久热| 婷婷97碰碰| 丁香五月激情网| 在线另类视频| 婷婷四月 成人 狠狠干| 成人五月天在线视频在线观看| 五月色欧美| 婷婷六月丁香色| 五月婷婷精品视频| 男人综合网| 婷婷六月视频| 久久香蕉丁香| 六月婷婷av| 亚洲视频二区| 五月丁香狠狠爱| 激情五月天天| 国产婷婷综合| 青青草Avb在线| 国产亚洲成人综合| 婷婷色九月| www.99热国产| A久网| 天堂综合久久 | 婷婷少妇激情| 久久狼人天堂| 亚洲亚洲人成综合网络| 五月婷激情| 岛国AAAV| 超碰京东热av男人的天堂| 五月天色综合| 99热日| 天天综合网在线| 九九综合久久| 教师性爱毛片| 日韩乱轮AV| 人人操人| 亚洲sesesese| 99在线观看视频蜜臀| 99九九精品| 亚洲欧美婷婷五月色综合| 免费无码毛片一区二区A片| 色婷婷成人做爰A片免费看网站| 天堂呦 呦百度搜索-百度搜索| 久一网站| 伊人五月久久| 另类 在线| 亚洲99热| 色综合五月| 婷婷色六月| VA国产在线综合网站| 天堂草在线观| www.minyis.com【JT】实力收量可预付QQ2101460746 | 激情综合色| 天天舔天天摸天天射| 五月天久久91| 丁香色成人| 天堂久久久久天堂网| 婷婷五月丁香六月| 婷婷五亚洲| 激情影院丁香五月| 五月丁香狠狠| 色色色色色色色色色色色色色色,网站| 99在线观看| 五月丁香WWW| 久久伊人五月天| 天天玩夜夜操| 久婷首页| 五月婷婷开心亚州在线| 成人片在线播放| 日本一級黃色一級片| 91嫩草国产线观看亚洲一区二区| 六月婷婷色综合| 天天爽,夜夜爽| 老师的粉嫩小又紧水又多A片视频 粉嫩AV久久一区二区三区 | 色六月丁香婷婷狠狠干| 久久新地址| 丁香五月婷婷欧美成人色图| 丁香桃色综合网| 婷婷亚洲五月| 激情 久久 婷婷| 亚洲欧洲色色| 五月天婷婷基地| 激情AV中文| 五月婷婷激情四月| 99热这里只有精品在线观看| 天堂综合久久| 成人网站免费sxj| 婷婷中文字暮| 色色婷婷综合| 丁香五月视频在线观看| 九九热精品视频| 北条麻妃九九九国产精品视频| 亚洲另类毛片| 婷婷激情六月中文| 99热啪啪| 成人做爰A片免费看视频| 色婷婷五月天| 5五月综合网亚洲| 综合激情站| 婷婷丁香九色| 婷婷欧美偷拍综合| 久久激情五月天| 免费看成人747474九号视频在线观看| 啪到高潮激情丁香五月| 五月天婷婷激情在线色图| 99爱视频在线观看| 久久黄色免费视频| 天天做天天爽| 激情小说五月天社区丁香| 亚洲成人一区| 五月婷婷国产| 婷婷丁香激情| 内射 无码 伊人| www.俺去也com| www.91五月| 欧美天天干天天草| 97碰精品| 五月婷婷,六月激情| 天天日天天爽| 99久热这里有精品| 色色色综合网| 5月婷婷6月丁香aV| 亚洲亚洲人成综合网络| 亚洲va欧美| 五月丁香五月婷婷| 九九色大香蕉| 色情综合网| 热的国产99热| 久久婷婷五月天激情| 五月婷婷色在线| 久久精品国产色| 日本ww亚洲| 777久久综合视频| 婷婷色日本| 久久精品人妻| 夜夜爱伊人| 久久超级碰视频| 97婷婷五月| 日韩成人电影av| 久久92| 五月天天天操天天爽夜夜操| 国产亚洲成AV人片在线观黄桃| 色综合色五月| 99综合视频| 青青夜夜狠狠夜夜狠狠| 一本色道久久88加勒比| 无月播播激情在线观看视频| 久久精品五月| 久久新地址| 日日天天天| 97干在线视频精品店| 丁香五月婷婷婷婷欧美综合| 9久久狠狠的| 九热视频| www.婷婷五月| 亚州操操| 久久久er热| 操精品9| AA久久| 丁香五月天堂| 激情五月婷婷| 丁香久久五月天视频在线观看 | 女人天堂 AV| 亚洲国产黄色电影| 热99国产精品| 九九成人电影婷婷| 激情五月天综合婷婷网| 秋霞网在线免费基地五月婷婷丁香| 美国不卡视频| 97婷婷色| 噜噜吧天天爱| 色五月婷婷777| 99热9999| 午夜性爱影视一区77| 99这里有精品| 久久美女五月天| 色 免费网站视频| 丁香五月婷婷国产av| 天天狠狠干| AV九九| 少妇综合网| 中文乱子伦视频| 色婷婷影视| 99久久久精品| 五月婷婷色五月| 伊人AV五月婷| 成人一级片| 日韩久久系列| 天天操综合网| 综合丁香婷婷五月天| 亚洲第二AV| 伊人婷婷五月天| 亚洲色vA| 婷婷六月激情小说网| 日韩欧美婷婷丁| AV人人操| 青青福利网| 九九热黄色| 婷婷久久色| 久久怕怕视频| 天天射色五月天| 六月丁香啪| 中文字幕av在线播放| 五月停停大香蕉| 夜夜操夜夜操| 天天天久久人人人合| 五月婷婷久久激情| 色五月婷婷影视| 丁香激情五月天| 日日.c| 99热这里都是精品| 操逼毛片国语对白| 狠狠色综合777| 人妻丰满精品一区二区A片| 秋霞午夜理论 | 午夜日日| 欧美性爱丁香五月| 六月丁香婷| 五月婷婷自拍视频| 婷婷天堂综合| 丁香九月激情| 天天激情视频| 五月天啪啪| 五月婷婷基地| 亚洲九区| 婷婷大美在线| 国产午夜精品一区二区三区四区| 五月丁香婷色| 碰97 久| 五月婷婷网久久| 五月丁香花婷婷玉莉AV| 狠狠久久婷| 69色婷婷| 六月色色| 五月开心网| 99这里只有精彩视频| 五月Huangsewang| 五月婷婷色激情| 国产精品成人AV在线| 丁香六月色婷婷| 黄色精品五月婷婷| 激情av| 天天摸天天高潮天天爽| 欧美日韩成人在线| 婷婷五月色网| 99se丁香| 五月婷婷综合丁香视频| 国产三级在线播放| 超碰资源在线| 日本人妻久久| 丁香五月婷婷超碰在线| Se.婷婷五月天| 日本久久色| 天天日日夜夜| 操操熟女| 色999亚洲人成色| 影音先锋 91工厂| 成人无码髙潮喷水A片| 亚洲五月六丁香激情| 3pAV| 婷婷五月俺要去| 深爱激情五月天色婷婷| 丁香五月激情六月| 99色区| 激情五月图| 久久精品爱爱| 婷婷五月激情基地| 另类色视频| 安息电影在线观看完整版| 色婷婷丁香六月| 国产阿姨日皮艹逼内射视频| www天天干| 梁铮版《蜘蛛女侠》在线| 丁香婷婷免费| 激情亚洲五月| 激情五月无码| 久热只有这里精品| 日韩1区2区| 夜色综合网| 99热在线精品观看| 99热成人| 99热这里有精品| 中文字幕日产A片在线看| 国产精品电| 五月激情久久| 婷婷色啪| 天天色情站| 热这里| 国产视频婷婷| 色色色热热热| 97av在线视频| 国产日比| 日本人妻伦在线中文字幕| 国产精品99久久久久久久女警| 丁香花社区av| 91丨九色丨老农村| 三人荫蒂添的好舒服A片| 人草人人| 97干欧美| 日本www免费九九| 大香蕉520| 亚洲激情五月婷婷日日| 色五月丁香一区在线| 丁香五月五婷| 国产VA亚洲VA96| 亚洲成人影视在线观看| 99re热视频这里只精品| 狠狠色综合网| www.色色com| 亚洲在线免费成人| 天天噜噜| 丁香婷婷五月基地| 色 免费网站视频| 色婷久九| 婷婷五月五月丁香| 熟妇内谢69XXXXXA片| 婷婷伊人网| 九九无码| 五月天啪啪啪| 欧美va在线| 丁香五月天天高清在线| 日日想日日夜日日操| 丁香六月色婷婷欧美| 五月丁香激情综合网| 国产在线黄色| 丁香五月色五月| 嫩草国产| 五月婷婷六月激情| 国产成人精品一区二三区熟女在线| 五月丁香久久| 五月天色不卡| 五月天婷婷激情小说| 天天噜天天爱| 激情精品久久| 青青热久精品视频在线观看| 亚洲综合视频在线| 99丁香婷婷综合网| 影音先锋91在线资源站| 国产精品美女久久久久AV超清| 欧美日韩成人在线网| 五月婷婷免费在线观看视频| 婷婷五月18永久免费视频| 激情网第四色| 五月天激情综合首页| 思思久ren热| 五月丁香在线婷婷蜜桃| 99福利视频| 五月好婷婷| 思思精品视频| 91成人视频| 九九激情| 人人人人人人人草| 亚洲视频二区| 青青草五月天| 怡红院院在线导航网| 伊人久久大香线蕉av最新| 色色999三级片| 欧美激情丁香五月天久久婷婷一区| 婷婷五月天视频亚洲| 香蕉人妻AV久久久久天天| 婷婷在线激情| 欧美丁香五月天| 五月丁香在线综合| 久久婷婷五月天激情新地址| 欧美99热| 桃色五月天| 久久小说| 天天狠狠婷婷在线| 99热综合在线| 婷婷色基地在线看| 九九综合色| 久99久精品| 91九色偷拍| 天天玩天天摸| 久久免费视频62| 亚洲天堂热| 五月天婷婷影院| 天天色天天色天天色天天色天天色天天色| 色婷婷久久天天性爱| 九九99免费理论| 婷婷丁香五| 成人色色视频| 干一干xxxx| 五月天激情小说婷婷基地| 极品人妻VIDEOSSS人妻| 综合五月草| 中文字幕,综合,91| 大香人妻| 久久色情综合免费网站| 综合色色网| 五月婷视屏在线观看| 五月天激情久久| 97干在线| 成人AV片播放| 五月 激情视频| 亚韩在线视频| 色宗合久久五月婷婷| 久久99热这里只频精品6学生| 亚洲AV成人精品日韩在线播放| 99无码精品| 综合网网欲色| 99在线观看这里都是精品| 狠狠色狠狠色综合日日91| 色在线99| 美女久久婷婷| 99精品偷拍视频| 开心五月激情| 婷婷六月亚洲综合| 99久久久久| 另类视屏| 丁香五月天啪啪激情综合网| 91viP在线看| 日本97人人| 色情五月丁香婷婷网| 99∨VTV| 婷婷无码视频| 丁香婷婷综合色五月激情国产基地| 婷婷五月深情丁香深爱日韩| 67194成I人在线观看线路1| 日韩精品无码99| 色九区| 在线播放人妻| 亚洲激情无码久久| 99色综合网| 久久天堂| 色深爱五月| 六月丁香五月婷婷| 涩丁香| 亚洲中文无码成人| 自拍偷窥99热| 操91综合网| 看婷婷五月天网| 91成人电影| 2021日韩无码| 热久久99视频| 99无码视频| 婷婷WWW久久| 亚洲视频色色| 色婷婷色99国产综合精品| 久久九九激情五月天 | 另类专区在线观看| 五月天婷婷婷| 欧日韩成人| 激情五月激情综合网| 婷婷伊人久久综合| 成人网站av免费网站推荐| 久热这里只有精品视频6| 日韩免费99| 欧美色五月| 天天爽天天爽夜夜爽|