免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

分?jǐn)?shù)規(guī)劃專題:二分答案與最優(yōu)比率問題的完整實(shí)戰(zhàn)指南

分?jǐn)?shù)規(guī)劃專題:二分答案與最優(yōu)比率問題的完整實(shí)戰(zhàn)指南 做分?jǐn)?shù)規(guī)劃這類題目很多人第一次看到題解里“二分答案 check”那一套總覺得像是憑空冒出來的思路。我自己最開始刷“算法提高16.01分?jǐn)?shù)規(guī)劃”這個(gè)專題時(shí)也是一臉懵一個(gè)求最優(yōu)比率的問題怎么就變成二分判定問題了后來又遇到一堆變種什么最優(yōu)比率生成樹、最優(yōu)比率環(huán)發(fā)現(xiàn)萬變不離其宗。這篇就按我個(gè)人從入門到實(shí)戰(zhàn)的路徑把這個(gè)專題完整拆開聊一遍把模型、原理、代碼和坑都擺出來。適合看這篇的人主要是正在刷算法提高專題、遇到分?jǐn)?shù)規(guī)劃卻無從下手的同學(xué)或者是想徹底搞懂“為什么能二分”而不是只背板子的參賽選手。內(nèi)容不涉及高深數(shù)學(xué)只要你有基礎(chǔ)的二分思想會寫最短路或者最小生成樹就能跟著走完整個(gè)過程。1. 先把分?jǐn)?shù)規(guī)劃的問題模型搞清楚1.1 從一道生活題說起我們經(jīng)常遇到這樣的問題有 n 個(gè)東西每個(gè)東西都有一個(gè)收益 a_i 和一個(gè)代價(jià) b_i現(xiàn)在要在這 n 個(gè)東西里選若干個(gè)使得選出來的東西總收益和總代價(jià)的比值最大。注意這里不是簡單的總和最大而是兩個(gè)總和的比值最大。舉個(gè)最直觀的例子。你有幾門課的成績每門課有“學(xué)分”和“分?jǐn)?shù)”現(xiàn)在你可以放棄其中若干門課目標(biāo)是讓剩余課程的平均分最高。這時(shí)候每門課的 b_i 是學(xué)分a_i 是這門課的成績乘以學(xué)分。你放棄幾門分低的課平均分確實(shí)會上去但你得想想放棄課程會導(dǎo)致分母也變小所以“貪心地放棄最低分”并不一定最優(yōu)。這就是分?jǐn)?shù)規(guī)劃要處理的核心矛盾分子和分母同時(shí)隨選擇變化不能拆開看。再換一個(gè)大家熟悉的實(shí)際場景給你若干組數(shù)據(jù)每組有完成的工作量和消耗的時(shí)間你要選幾組使得“總工作量 / 總時(shí)間”最大。直接一個(gè)個(gè)比較“單位時(shí)間工作量”然后排序選最大的只有在能拆開按比例取的時(shí)候才成立一旦要求整體選擇這種貪心就會失效。1.2 從實(shí)際需求抽象出數(shù)學(xué)模型把所有選擇抽象一下假設(shè)我們有一個(gè)變量 x_i 表示“第 i 個(gè)元素是否被選中”取 0 或 1。那么我們要最大化的目標(biāo)就是最大化Σ(a_i * x_i) / Σ(b_i * x_i)其中 b_i 通常要求為正數(shù)。分母不能為 0所以至少得選一個(gè)元素。這類問題統(tǒng)稱分?jǐn)?shù)規(guī)劃又叫比率規(guī)劃。“16.01 分?jǐn)?shù)規(guī)劃”這個(gè)專題編號常見的命名方式其實(shí)指的就是這類問題。核心難點(diǎn)是目標(biāo)函數(shù)既不是線性的也不是凸的直接求導(dǎo)、直接動態(tài)規(guī)劃都不太好辦。但它的特殊之處在于我們關(guān)心的不是每一項(xiàng)的比值而是整體加和之后的比率。關(guān)鍵轉(zhuǎn)化來了。假設(shè)我們猜測最終最優(yōu)值是 r也就是說存在一種選擇方案讓分子和分母的比值 ≥ r那么這個(gè)條件等價(jià)于Σ(a_i * x_i) - r * Σ(b_i * x_i) ≥ 0把它改寫一下Σ((a_i - r * b_i) * x_i) ≥ 0看到?jīng)]右邊變成了一個(gè)關(guān)于 x_i 的線性求和式。每一項(xiàng)的“價(jià)值”變成了 (a_i - r * b_i)。如果我們要判斷是否存在一個(gè)選法讓這個(gè)式子大于等于 0那就變成了一個(gè)非常普通的問題從一堆物品中按照某個(gè)規(guī)則挑選若干物品使得選中物品的“新價(jià)值”之和最大再看這個(gè)最大值是否非負(fù)。這個(gè)變換是整個(gè)分?jǐn)?shù)規(guī)劃專題的靈魂。1.3 分?jǐn)?shù)規(guī)劃常見的三種形式在算法題里分?jǐn)?shù)規(guī)劃很少單獨(dú)出現(xiàn)通常是作為“外殼”套在別的經(jīng)典算法外面。我按自己刷題遇到的頻率整理一下。第一種是最基礎(chǔ)的 01 分?jǐn)?shù)規(guī)劃也就是上面那種“選若干物品最大化比率”。典型解法是二分 r然后根據(jù)新價(jià)值是否大于 0 判斷。判斷的時(shí)候往往還要加一個(gè)約束比如“恰好選 k 個(gè)”“至少選 k 個(gè)”“最多選 k 個(gè)”那就對應(yīng)不同的子問題比如排序取前 k 個(gè)、背包 DP 等。第二種是最優(yōu)比率生成樹。題目給你一張圖每條邊有兩個(gè)權(quán)值比如“成本”和“收益”要你找一棵生成樹讓這棵樹的“總收益 / 總成本”最大。二分 r 之后每條邊的權(quán)值變成 a_i - r * b_i判斷是否存在生成樹使得總權(quán)值 ≥ 0。這時(shí)候套的就是最小生成樹算法只是邊權(quán)被重新定義了。第三種是最優(yōu)比率環(huán)。這個(gè)稍微繞一點(diǎn)給一個(gè)有向圖每條邊有權(quán)值 a_i 和 b_i要找一個(gè)環(huán)使得環(huán)上所有邊的“總收益 / 總代價(jià)”最大。二分 r 之后每條邊的權(quán)值變成 a_i - r * b_i要找是否存在一個(gè)正環(huán)。正環(huán)判斷一般用 SPFA 的某個(gè)變種這也是很多人覺得難的地方。無論是哪一種核心都逃不過那個(gè)關(guān)鍵變換把“比值 ≥ r”變成“線性值 ≥ 0”然后用已知算法去判定。這也是為什么我建議先把第一種吃透后面兩種就是套殼。2. 二分法為什么“猜答案”可行2.1 二分的是答案不是選擇方案很多人看到“二分答案”四個(gè)字第一反應(yīng)是我們不是要找最優(yōu)的選擇方案嗎怎么變成猜一個(gè)數(shù)了這里的關(guān)鍵在于分?jǐn)?shù)規(guī)劃最優(yōu)值的范圍通常比較容易確定而且判斷“當(dāng)前猜的值是否可行”是相對容易的。我們并不需要直接構(gòu)造出最優(yōu)方案而是通過不斷收縮答案區(qū)間逼近那個(gè)最優(yōu)比率。假設(shè)我們猜了一個(gè)值 r然后對所有元素計(jì)算差值 c_i a_i - r * b_i。如果存在一個(gè)可行選擇方案使得中選元素的 c_i 之和大于等于 0那么說明最優(yōu)值至少是 r也就是答案在 [r, 上界] 區(qū)間里如果無論怎么選這個(gè)和都小于 0說明我們想要的比率根本達(dá)不到 r答案應(yīng)該比 r 小。之所以可以二分是因?yàn)檫@個(gè)判定結(jié)果關(guān)于 r 是單調(diào)的。r 越小c_i a_i - r * b_i 越大顯然越容易滿足“之和 ≥ 0”r 越大c_i 越小越不容易滿足。所以存在一個(gè)臨界點(diǎn)低于它答案可行高于它不可行這個(gè)臨界點(diǎn)就是最優(yōu)比值。這個(gè)單調(diào)性非常重要。它不是“看起來像”單調(diào)而是嚴(yán)格單調(diào)因?yàn)?b_i 都是正的r 增大時(shí)每一項(xiàng) c_i 都嚴(yán)格減少或者至少不增總和也嚴(yán)格減少所以一旦某個(gè) r 可行那么任何比它小的 r 也一定可行。這就保證了二分完全正確。2.2 判定問題的具體化現(xiàn)在問題聚焦到了給定 r 和所有 c_i如何判斷是否存在合法選法讓所選元素的 c_i 之和 ≥ 0。如果是 01 分?jǐn)?shù)規(guī)劃“選任意多個(gè)”那我們直接看所有 c_i 中正數(shù)的和是否 ≥ 0 就行因?yàn)槿钦龜?shù)的都選上肯定最優(yōu)負(fù)數(shù)的都不選。如果要求“恰好選 k 個(gè)”那就是選出 c_i 最大的 k 個(gè)看前 k 大之和是否大于等于 0。這里要注意排序選前 k 大之所以能成立是因?yàn)榕袛鄺l件里沒有其他相互依賴的約束。一旦加上“必須選滿 n 個(gè)中的某部分”“分組一定要達(dá)到某條件”那就可能要用背包 DP 或者網(wǎng)絡(luò)流來判定。很多分?jǐn)?shù)規(guī)劃題目的難點(diǎn)其實(shí)在這里分?jǐn)?shù)規(guī)劃本身只提供了外層框架。我自己做題的習(xí)慣是先把判定子問題抽象出來明確要套用什么算法。比如選 k 個(gè)最大值排序選一個(gè)生成樹最小生成樹選一個(gè)環(huán)SPFA 判正環(huán)選若干物品且容量有限背包 DP只要判定算法是多項(xiàng)式復(fù)雜度外面的二分次數(shù)一般是 50 到 60 次整體復(fù)雜度基本可控。2.3 check 函數(shù)的編寫要點(diǎn)編寫二分判定函數(shù)時(shí)有一個(gè)細(xì)節(jié)非常重要c_i 的浮點(diǎn)誤差。由于 a_i 和 b_i 可能是很大的整數(shù)r 是浮點(diǎn)數(shù)計(jì)算 c_i a_i - r * b_i 時(shí)要注意精度損失。更穩(wěn)妥的做法是使用更高精度的浮點(diǎn)數(shù)或者在特殊情況下把比較轉(zhuǎn)化為整數(shù)運(yùn)算。舉個(gè)例子假設(shè) a_i 和 b_i 都是整數(shù)我們要判斷“前 k 個(gè) c_i 之和是否 ≥ 0”。如果直接用浮點(diǎn)數(shù)累加最終和特別接近 0 時(shí)可能因?yàn)檎`差導(dǎo)致判錯。這時(shí)候可以把不等式左右都乘以一個(gè)數(shù)或者干脆在累加時(shí)用 long double等排序完后再和 0 比較。另一個(gè)重點(diǎn)是二分的邊界。最優(yōu)比率不會超過 max(a_i / b_i)所以二分上界可以取這個(gè)最大值下界取 0。也有人為了省事直接取一個(gè)很大的數(shù)比如 1e12但這樣會白白多算幾次二分。我建議還是老老實(shí)實(shí)求一個(gè)合理的上界一方面減少迭代次數(shù)另一方面防止浮點(diǎn)數(shù)在極大值附近丟失精度。二分次數(shù)怎么定也很關(guān)鍵。很多人用 while (r - l eps) 來判斷但這樣容易因?yàn)?eps 設(shè)得不對而無限循環(huán)。我推薦直接固定循環(huán) 60 次或者 80 次每次把區(qū)間縮小一半。這樣不用糾結(jié) eps 該設(shè)多少也能保證精度足夠。原因很簡單double 的有效位數(shù)有限固定迭代次數(shù)比固定差值更可控。3. 經(jīng)典例題實(shí)操考試放棄題3.1 題目設(shè)計(jì)與建模過程為了把上面的思路落下來我們用一個(gè)經(jīng)典題目走一遍完整流程。假設(shè)有 n 門考試第 i 門考試的總分是 b_i你得了 a_i 分?,F(xiàn)在學(xué)校允許你放棄其中 k 門課問剩余課程的平均分最高可以是多少。平均分的定義是剩余課程得分之和 / 剩余課程滿分之和。注意不是把每門課單獨(dú)算百分制再取平均而是加權(quán)平均權(quán)重就是每門課的滿分。這一點(diǎn)很關(guān)鍵很多人一開始會理解錯。建模過程是這樣的每門課其實(shí)是一個(gè)物品b_i 是滿分a_i 是得分。我們要從 n 個(gè)物品中去掉 k 個(gè)相當(dāng)于選擇剩余的 n-k 個(gè)物品讓 Σa_i / Σb_i 最大。這里“選多少個(gè)”是固定的所以到了二分判定環(huán)節(jié)我們會計(jì)算所有 c_i a_i - r * b_i然后排序取最大的 n-k 個(gè)看它們的和是否 ≥ 0。細(xì)想一下為什么要取最大而不是最小因?yàn)槲覀円袛唷笆欠翊嬖谝环N選法讓所選物品的 c_i 之和 ≥ 0”在選固定數(shù)量 m 個(gè)物品時(shí)肯定選 c_i 最大的 m 個(gè)最有利。如果這 m 個(gè)最大的加起來都小于 0那其他任何選法更不可能滿足條件。這個(gè)邏輯非常直接。3.2 完整代碼實(shí)現(xiàn)我直接用 C 寫一版完整實(shí)現(xiàn)思路就是二分套排序判定。假設(shè)輸入 n 和 k然后兩個(gè)數(shù)組 a 和 b最后輸出最大平均分。#include bits/stdc.h using namespace std; const int MAXN 1005; int n, k; double a[MAXN], b[MAXN]; double c[MAXN]; bool check(double r) { for (int i 0; i n; i) { c[i] a[i] - r * b[i]; } sort(c, c n, greaterdouble()); double sum 0; int m n - k; for (int i 0; i m; i) { sum c[i]; } return sum 0; } int main() { while (scanf(%d%d, n, k) 2) { if (n 0 k 0) break; for (int i 0; i n; i) scanf(%lf, a[i]); for (int i 0; i n; i) scanf(%lf, b[i]); double l 0, r 0; for (int i 0; i n; i) { r max(r, a[i] / b[i]); } for (int iter 0; iter 60; iter) { double mid (l r) / 2; if (check(mid)) { l mid; } else { r mid; } } printf(%.6lf\n, l); } return 0; }這段代碼是一個(gè)完整可運(yùn)行的程序核心就是 check 函數(shù)。我故意把 a 和 b 聲明為 double是為了讓代碼簡潔但如果輸入是整數(shù)改成 long long 讀入、在 check 內(nèi)部轉(zhuǎn)成 double 計(jì)算會更好避免大整數(shù)在浮點(diǎn)數(shù)轉(zhuǎn)換時(shí)出現(xiàn)意外誤差。輸出的精度也要注意。二分 60 次之后區(qū)間長度大約是初始區(qū)間長度除以 2 的 60 次方早就超過 double 的精度極限了。所以輸出 l 或者 r 都可以但保留 6 位小數(shù)是最常見的做法。有些題目要求百分比輸出或者保留 3 位小數(shù)那就按照題目要求來。3.3 復(fù)雜度與精度分析這個(gè)解法的時(shí)間復(fù)雜度分兩塊。一塊是外層二分固定 60 次。一塊是每次 check 里的排序復(fù)雜度 O(n log n)。所以總復(fù)雜度是 O(60 * n log n)n 到 1e5 的時(shí)候大概能跑進(jìn)一兩秒n 到 1e6 就有點(diǎn)懸了。如果題目 n 特別大但恰好不需要排序而是用 nth_element 只取前 m 個(gè)就可以把 check 降成 O(n)。我提供的是排序版本因?yàn)橥ㄓ眯院涂勺x性更好實(shí)際比賽里如果 T 組數(shù)據(jù)且 n 巨大我會改成 nth_element 優(yōu)化。關(guān)于精度有一個(gè)實(shí)用性建議如果 a_i 和 b_i 都是整數(shù)而且題目要求輸出百分?jǐn)?shù)也就是把平均分乘以 100那么在 check 里可以直接比較a[i] * 100 - r * b[i] 0這樣 r 表示的是“百分制平均分”避免最后輸出的時(shí)候還要再乘一次導(dǎo)致二次誤差。我見過不少同學(xué)二分時(shí)用的是原始分?jǐn)?shù)輸出時(shí)才乘 100結(jié)果因?yàn)楦↑c(diǎn)誤差差了 0.01 被卡。這種細(xì)節(jié)最冤枉寫代碼時(shí)提前想清楚單位能省很多事。4. Dinkelbach 算法另一種迭代思路4.1 用最優(yōu)解不斷逼近最優(yōu)值除了二分分?jǐn)?shù)規(guī)劃還有一個(gè)經(jīng)典迭代算法叫 Dinkelbach 算法。它的思路更像是在“用上一次的最優(yōu)方案來修正當(dāng)前的候選答案”。具體來說我們從一個(gè)初始猜測值 r 開始。在當(dāng)前 r 下找到使得 Σ(a_i - r * b_i) 最大的選擇方案假設(shè)這個(gè)最大和是 F(r)。如果 F(r) ≥ 0我們可以把 r 更新為“當(dāng)前最優(yōu)選法”的實(shí)際比率即r_new Σa_i / Σb_i 這里的選法是剛才求出的最優(yōu)選法然后重復(fù)這個(gè)過程直到 r 的變化小到可以忽略。為什么有效因?yàn)槊看胃潞蟮?r_new 一定是比之前更優(yōu)的下界而且每次選法對應(yīng)的實(shí)際比率會單調(diào)遞增。這個(gè)算法的收斂速度通常比二分快尤其在后半段往往幾次迭代就能達(dá)到很高精度。4.2 實(shí)際對比何時(shí)選二分何時(shí)選 Dinkelbach從編碼角度講二分更直觀不容易寫錯Dinkelbach 則需要你額外保存“當(dāng)前最優(yōu)方案所選元素”的和代碼量稍微多一點(diǎn)而且要求判定問題本身能方便地求出最優(yōu)方案而不只是判定可行性。從效率角度講Dinkelbach 的迭代次數(shù)在多數(shù)情況下遠(yuǎn)小于 60 次可能十幾二十次就收斂了。但它的每輪迭代同樣要跑排序或者最短路所以實(shí)際差別不是特別大。不過有一點(diǎn)Dinkelbach 適合那些 check 過程本身就能返回最優(yōu)選擇方案的場景如果判定算法只能返回一個(gè) bool那還是用二分省事。我個(gè)人的習(xí)慣是比賽時(shí)默認(rèn)寫二分因?yàn)闀r(shí)間復(fù)雜度可控、魯棒性強(qiáng)只有在 T 組數(shù)據(jù)特別多、二分次數(shù)明顯成為瓶頸時(shí)才改用 Dinkelbach。還有一種情況就是判定問題本身用的是 SPFA 判正環(huán)這類復(fù)雜算法每多一次迭代都心驚膽戰(zhàn)這時(shí)候 Dinkelbach 的快速收斂優(yōu)勢就很明顯了。需要注意Dinkelbach 對初值有一定依賴。如果初值設(shè)得太離譜第一輪迭代可能導(dǎo)致更新出很奇怪的結(jié)果。我的做法是取所有 a_i / b_i 的最大值作為初值反正這個(gè)值必然不小于最終答案迭代起來很快。5. 分?jǐn)?shù)規(guī)劃的變種問題拓展5.1 最優(yōu)比率生成樹的二分判定前面提到最優(yōu)比率生成樹也是同一套路?,F(xiàn)在假設(shè)每條邊有兩個(gè)屬性 cost 和 value要選 n-1 條邊形成生成樹讓 value 之和與 cost 之和的比值最大。在二分到 r 時(shí)每條邊的新權(quán)值是 value_i - r * cost_i。我們需要判斷是否存在一棵生成樹讓總權(quán)值 ≥ 0。注意這里不是求最小生成樹隨便判斷一下而是要判斷“最大可能的生成樹權(quán)值”是否非負(fù)。用最小生成樹算法求出來的其實(shí)是最小權(quán)值如果最小權(quán)值都 ≥ 0那所有生成樹都 ≥ 0但我們要判斷的是是否存在某一棵 ≥ 0所以應(yīng)該求最大生成樹。這個(gè)問題我踩過坑用 Kruskal 時(shí)習(xí)慣性按邊權(quán)從小到大排序結(jié)果一直錯。最優(yōu)比率生成樹應(yīng)該按新邊權(quán)從大到小排序找最大生成樹看總權(quán)值是否 ≥ 0。這里的“最大”不是指收益最大而是指在當(dāng)前 r 下新權(quán)值之和最大這樣才能最大化滿足條件的機(jī)會。復(fù)雜度方面二分 60 次每次 Kruskal 是 O(m log m)m 是邊數(shù)。如果邊數(shù)到 2e5總復(fù)雜度就是 60 * 2e5 * log通常情況下可以接受但要注意常數(shù)。我試過在一些 OJ 上用 Kruskal 套分?jǐn)?shù)規(guī)劃如果不加優(yōu)化很容易超時(shí)??梢蕴崆鞍堰叞丛?cost 排序減少每次重排的工作不過新權(quán)值依賴 r嚴(yán)格來說沒法完全復(fù)用排序結(jié)果只能盡量優(yōu)化常數(shù)。5.2 最優(yōu)比率環(huán)與正環(huán)判定最優(yōu)比率環(huán)是另一個(gè)常見變種也是我個(gè)人覺得最容易繞暈的。給定有向圖每條邊有收益 w_i 和花費(fèi) t_i找一個(gè)有向環(huán)讓環(huán)上總收益 / 總花費(fèi)最大。二分 r 后每條邊的新權(quán)值是 w_i - r * t_i我們要判斷是否存在一個(gè)環(huán)使得環(huán)上所有邊的新權(quán)值之和 ≥ 0。換句話說判斷圖中是否存在正權(quán)環(huán)。正權(quán)環(huán)的判定有兩種常見做法。一種是把權(quán)值取反然后判負(fù)環(huán)用 SPFA 的標(biāo)準(zhǔn)寫法另一種是直接用最長路加入隊(duì)次數(shù)判正環(huán)。我推薦第一種因?yàn)榕胸?fù)環(huán)的 SPFA 模板更常見不易寫錯。具體實(shí)現(xiàn)時(shí)注意初始化判負(fù)環(huán)要初始化為 INF判正環(huán)要初始化為 0 或 -INF入隊(duì)次數(shù)超過 n 說明存在環(huán)。這里有個(gè)細(xì)節(jié)如果圖本身不連通要多次從不同起點(diǎn)跑 SPFA或者建一個(gè)超級源點(diǎn)連向所有點(diǎn)否則會漏判。最優(yōu)比率環(huán)還有一個(gè)坑二分時(shí) r 的初始上界不能用簡單的 max(w_i/t_i) 來算因?yàn)榄h(huán)是整體加和單條邊的比率不能代表整個(gè)環(huán)的比率。我的做法是設(shè)一個(gè)較大的上界比如 1e7或者根據(jù)題目數(shù)據(jù)范圍算一個(gè)保底值。反正 SPFA 判定本身不慢多幾次二分問題不大。5.3 分?jǐn)?shù)規(guī)劃與背包 DP 的組合還有一種變種比較少見但很有代表性選出的物品數(shù)量不固定但受到某個(gè)總?cè)萘肯拗?。比如每個(gè)物品有體積背包容量是 V要從物品中選一個(gè)子集讓總收益 / 總花費(fèi)最大。這種問題在二分到 r 后判定就變成了一個(gè) 0/1 背包問題每個(gè)物品價(jià)值是 w_i - r * c_i要求在體積不超過 V 的前提下最大化所選物品的價(jià)值之和再看這個(gè)最大值是否 ≥ 0。這里的復(fù)雜度就和前面的排序題明顯不同了。背包 DP 的復(fù)雜度是 O(n * V)外面再乘 60 次二分必須注意 V 的大小。如果 V 到 1e5、n 到 100整體勉強(qiáng)能過如果 V 到 1e6那就得考慮優(yōu)化比如可行性背包轉(zhuǎn)成完全背包等。但不管怎樣框架還是一樣的二分 r然后套背包判定。從這些變種可以看出分?jǐn)?shù)規(guī)劃本身并不難難的是掛在它下面的那層“判定算法”。所以我的建議是先確保自己對排序、最小生成樹、SPFA、背包 DP 這些基礎(chǔ)算法非常熟練再來攻克分?jǐn)?shù)規(guī)劃專題會順暢很多。我最初就是基礎(chǔ)算法不牢結(jié)果在判定環(huán)節(jié)反復(fù)出錯還以為是分?jǐn)?shù)規(guī)劃本身理解錯了。6. 常見問題與避坑技巧實(shí)錄6.1 二分邊界設(shè)錯導(dǎo)致答案偏移我見過很多初學(xué)者把二分上界直接設(shè)成一個(gè)很大的常數(shù)比如 1e9然后循環(huán) 50 次發(fā)現(xiàn)答案偏大或者偏小。原因在于浮點(diǎn)數(shù)在非常大和非常小之間二分時(shí)后半段可能已經(jīng)達(dá)到了浮點(diǎn)精度極限繼續(xù)二分只是在一個(gè)區(qū)間內(nèi)抖動不會繼續(xù)收斂。正確做法是先掃描一遍所有元素求出 a_i / b_i 的最大值作為 r 的上界。這個(gè)值一定不小于最終答案因?yàn)閱为?dú)選某個(gè)物品的比率不可能超過所有物品中的最大比率整體比率也不會超過它。數(shù)學(xué)上很好理解分子的加權(quán)平均除以分母的加權(quán)平均不可能大于各個(gè)分子分母比值的最大值這是加權(quán)平均的基本性質(zhì)。6.2 排序方向搞反這個(gè)錯誤特別隱蔽。在“去掉 k 個(gè)物品”的題目里我們要選最大的 n-k 個(gè) c_i 值在“生成樹”里我們要找最大生成樹在“環(huán)”里我們要找正環(huán)??雌饋矶际恰白畲蟆钡@和很多人寫慣了的“最小生成樹”“最短路徑”套路不一樣容易習(xí)慣性搞反。我自己有一次寫最優(yōu)比率環(huán)SPFA 判的是負(fù)環(huán)結(jié)果一直以為代碼寫錯折騰了半天才發(fā)現(xiàn)是判環(huán)方向反了。后來我給自己定了一條規(guī)則分?jǐn)?shù)規(guī)劃的所有判定先想清楚“我要不要最大化這個(gè)新權(quán)值的和”然后順著目標(biāo)選算法。最大化用最長路、最大生成樹最小化用最短路、最小生成樹分清之后再動手寫代碼。6.3 精度比較時(shí)使用 eps 不當(dāng)判斷 sum 0 時(shí)有人喜歡寫 sum -eps認(rèn)為這樣更寬容有人寫 sum eps認(rèn)為這樣更嚴(yán)格。這個(gè)選擇其實(shí)取決于你二分后輸出的目標(biāo)是最大值還是最小值以及你二分循環(huán)的條件。我的建議是如果使用固定迭代次數(shù)二分check 里直接和 0 比較就行不需要 eps。因?yàn)槎盅h(huán)結(jié)束時(shí)答案的誤差已經(jīng)由迭代次數(shù)保證了check 里的微小偏差不會影響最終輸出的位數(shù)。如果你非要用 while (r - l eps)那 eps 至少要設(shè)在 1e-8 以下并且配合 long double 使用否則容易死循環(huán)或者結(jié)果差一位。6.4 輸出格式要求是百分?jǐn)?shù)還是小數(shù)很多分?jǐn)?shù)規(guī)劃題目要求輸出百分?jǐn)?shù)比如保留三位小數(shù)加一個(gè)百分號。你在二分時(shí)的 r 是原始比率輸出前要乘以 100這時(shí)候可能出現(xiàn) 0.001 的精度問題。我建議在輸入后直接把 a_i 或 b_i 按要求縮放。如果輸出百分?jǐn)?shù)且保留三位小數(shù)可以在 check 里把 r 當(dāng)作百分?jǐn)?shù)來算這樣代碼里處理的單位與輸出單位一致減少一次換算誤差。這個(gè)方法雖然聽起來只是小技巧但真的能救你于卡精度之中。6.5 大數(shù)據(jù)讀取與常數(shù)優(yōu)化分?jǐn)?shù)規(guī)劃結(jié)合排序的版本主要瓶頸在排序上。如果 n 達(dá)到 1e6每次 check 都完整排序會非常吃力。一個(gè)常用優(yōu)化是改用 nth_element 只取第 k 大并同時(shí)求前 k 大之和這樣復(fù)雜度從 O(n log n) 降到 O(n)。還有一個(gè)小技巧對于“選前 m 個(gè)最大值之和”不需要把所有 c_i 都存下來再排可以在生成 c_i 時(shí)同時(shí)維護(hù)一個(gè)大小為 m 的最小堆堆內(nèi)元素就是當(dāng)前最大的 m 個(gè)。這樣空間復(fù)雜度可能更高但思路一樣。具體用哪種取決于你更在乎代碼簡潔性還是極限性能。6.6 多組數(shù)據(jù)時(shí)注意二分重置這個(gè)看起來是基礎(chǔ)問題但真的很常見。多組輸入時(shí)上界 r 和數(shù)組內(nèi)容都要重新初始化。我見過一個(gè)同學(xué)因?yàn)樯辖鐩]有重置第一組數(shù)據(jù)算出一個(gè)很大的上界第二組數(shù)據(jù)小一點(diǎn)二分直接從錯誤范圍開始結(jié)果答案完全不對。我的習(xí)慣是每組數(shù)據(jù)進(jìn)來后除了讀入數(shù)組還要把 r 初始化為 0然后再做掃描求最大值。這個(gè)操作雖然不起眼但能避免一個(gè)很惡心的排查過程。7. 一點(diǎn)個(gè)人經(jīng)驗(yàn)分享分?jǐn)?shù)規(guī)劃這個(gè)專題最難的不是那套二分框架而是你能不能識別出題目背后的比率結(jié)構(gòu)。很多時(shí)候題目會把“收益”和“代價(jià)”隱藏起來。比如“每位應(yīng)聘者有工作能力和期望薪資選若干人讓總能力 / 總薪資最大”本質(zhì)就是 01 分?jǐn)?shù)規(guī)劃。多練幾道題之后你會逐漸形成一種直覺只要看到“比率”“平均”“單位成本收益”這些詞就該往分?jǐn)?shù)規(guī)劃上想。如果一定要說一個(gè)最重要的技巧那就是把所有問題都轉(zhuǎn)化到“判斷是否存在選法使新權(quán)值之和非負(fù)”這一層。之后無論面對生成樹、環(huán)還是背包變種思路都會特別清晰。做專題訓(xùn)練時(shí)不要急著看題解先自己想清楚如果二分一個(gè)數(shù)check 函數(shù)里該做什么這個(gè)問題的答案往往是解題的核心。最后說個(gè)實(shí)踐建議把經(jīng)典題目換著寫法做一遍。同一道 01 分?jǐn)?shù)規(guī)劃先用二分寫一遍再用 Dinkelbach 寫一遍然后在相同數(shù)據(jù)下對比兩者的輸出和運(yùn)行時(shí)間。這個(gè)對比做完你對該算法的理解絕對比看十篇題解都深刻。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91高潮喷水久久久久久久久| 国产色色色色色| aaaaa不卡| 色五月丁香婷婷| 五月婷婷丁香啪啪| 九九美女视频| 精品人妻伦一二三区久久| 婷婷五月激情丁香激情| 婷婷综合一二三| 婷婷丁香花五月天| 99热这里只有精品在线播放| 极品少妇高潮啪啪AV无码| 狠狠88综合久久久久噜噜噜| 99人人干人人| 美女婷婷激情亚洲| 99精品在这里| 婷婷久久精品| 亚洲狠狠操| 人人操 色| www.夜夜操.com| 国产又黄又爽又激情不遮挡视频在线观看| 2017狠狠干| www.婷婷五月天| 天天爽综合网| 五月天婷婷色播在线网| 99这里只有精品视频免费| 国产69久久久欧美黑人A片| 丁香五月婷婷激情视频播放| 五月丁香六月激情综合网 | 综合色色综合| 超碰免费电影| 日韩一级淫乱片一区二区三区| 99激情网| 欧美超级视频97| 国产日批视频| 丁香六月天AV| 99这里只有精品视频免费| AV在线二十六页| 亚洲乱码精品久久久久..| A久久| 这里只有在线精品| 99热这里只有精品亚洲| 婷婷丁香五月天色播网站| 9 1在线视频| 99热精品综合| 这里只有精品在线播放| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 久9视频| 97色色综合| 成人必爱视| 欧美日韩成人在线观看| 99丁香五月婷| 九九五月天| 色情婷| 一区操| 91性交在线播放| 午夜美女人啪最红院| 久久狠婷婷| 牛牛热这里只有jingpin| 综合久久久| 亚洲欧美999| 深爱激情网婷婷| 欧洲激情网站| 五月婷婷黄色视频| 色色 9| 99视频精品8| 九九热视频精品2| 久99视频在线观看| 丁香六月婷月91婷月| 色色五月天激情| 免费黄色视频网址| 99色视频| 99超级超级超级碰| 色狠狠色| 婷婷色五月亚洲| 九九九九九无码| 五月丁香色婷婷伊人| 丁香九月婷婷综合| 夜夜骑日日操| 激情婷婷五月天日本系列| 五月丁香婷婷人体| 日韩色色视频| 六月激情婷婷| 日本三级日本黄色| av在线播放网址| AV在线中文| 色婷婷av在线观看| 五月色婷婷亚洲 | 婷婷激情五月| 无语停婷丁香网| 中文字幕天天干| 伊人大香久久| 丁香婷婷六月激情文学| 看逼中文字幕| 99re热视频这里只有综合亚洲| 九月婷婷久久久| 五月天合网| 色情播放| 五月伊人网| 桃色成人网| 激情婷婷护士激情| 五月丁色AV| 丁香五月婷婷色五月| 五月激情另类| 色九亚洲| 久久ri精品| 欧美熟妇一区二区三区| 日韩成人五月天| 婷婷五月天综合小说网| 欧洲色色| 中文字幕在线不卡| 丁香激情五月少妇| 99久热| 狠狠色综合久久久久| 九九色色色| 26uuu欧美| 婷婷伊人欧美| oumeisesewang| 五月天色婷婷基地| 99色综合| 五月婷精品| 欧美97p| 丁香五月欧美色综合| 五月激情综合网| 日噜噜色| 五月婷色啪| 丁香九月久久| 99久久精彩视频| 婷婷色播色五月五色五月天色妇| 丁香五月综合激情性爱 | 激情五月天婷婷| 人妻Av在线| 91精品久久久久久77777| 五月丁香五月天现场视频| 婷婷大乡焦噜噜| 少妇性按摩无码中文A片| 婷婷欧美激情| 丁香五月天AV| 一区二区传媒视频| 丁香五月六月婷婷殴美综合| 人人艹艹艹| 亚洲一个色| 九九这里有精品| 噼里啪啦完整版中文在线观看| 超碰免费人人| 26.uuu丁香五月婷婷| 狠狠色噜噜狠狠狠888了| 五月婷婷激情网| 色五月婷婷7777| 成人精品在线观看| 久久人妻久久| 丁香六月啪啪| 综合网五月| 外国碰视频网站97| 久久久五月天| 色婷婷中文字母五月丁香| 色碰碰视频| 国内久久亭亭| 狠狠色大香蕉| 久操操| 免费97碰碰| 情色五月天 网站| 天天色爽| 婷婷中合| 无码网站视频| 久久久久久97| 久久综合首页| a网站免费观看| 丁香五月激情综合婷综| 超碰不卡在线| 天天做天天爱天天爽夜夜揉| 精品人妻伦九区久久AAA片| 天天日日夜夜爽| 亭亭玉月丁香| 五月丁香婷婷激情久久| 激情四射亚洲| 六月综合婷婷开心伊人| 另类激情五| 天天射影院| 九九99在线| 天天色噜| 五月大香蕉| 天干夜夜操| 国在线激情网| 五月Huangsewang| 天天橾日日橾夜夜橾17| 狠狠色丁香婷婷| 婷婷五月天成人网| 丁香午月AV中文字幕| 99热香港| 99色免费| 五月丁香在线| 开心激情播播五月天| 97操碰日本女人| 六月丁香网| 黄色片精品| 五月天天天色| 人人看人人要| 一逼色综合| 色情五月天丁香社区| 五月天综合久久丁香91| WWW.婷婷| 九九这里都是精品| 九九色逼| www狠狠爱com| 99操碰| 久久婷婷丁香六月天| 色色网91| 婷婷五月花| 免费视频这里只有精品| 91久久1118| 777精品久无码人妻蜜桃| 久久黄色片| 九色PORNY自拍成人精彩视频| av狠狠操| 99久久久免费| 强伦轩人妻一区二区电影| 婷婷丁香亚洲色综合91| 久综合4| 免费黄色AV| 麻豆123区| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 免费在线观看欧美激情xx小视频| 嫩草AV久久伊人妇女超级A| 97在线天堂| 色婷婷导航| www国产亚洲色婷婷com| 久久久妻人人人| 色涩视频久久| 少妇人妻人伦A片| 婷婷五月天开心网| 六月丁香深深爱| 中文字幕第四色.999| 亚洲热视频| 五月天天爽| 久久曰曰| www.91婷婷| 深夜婷婷 丁香| WWW.99热| www.久久久久久久| 日日日日日| 色五月婷婷大| 九九香蕉网| 五月天婷婷色色首页| 97在线精品| 色偷偷色婷婷| 日韩黄色电影| 六月丁香网| 99热这里有精品2| 九九九热精品| 亚洲综合成人网| 亚洲精品成人片在线播| 九九九九无码| 婷婷色色色| 日韩久热| 久久五月网| 天天摸天天舔| 日日干天天| 99r这里| 天天综合天天做天天综合| 超碰亚洲天堂| 五月天婷婷三级黄| 丁香五月视频在线观看| 都市激情五月婷婷综合| 亚洲综合视频一下| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 综合网网欲色| 碰碰人人漕| 五月色婷婷夜色| 热思思九九| 久草热8精品视频在线观看| 大香蕉网站,大香蕉综合| 日本欧美成人片AAAA| 丁香婷婷色情社区成人小说| 婷婷六月丁香五月| 国产精品色色| 婷婷伊人综合中文字幕| 夜夜谢天天干| 日本精品人妻无码77777| 五月激情在线| 成人无码免费一区二区中文| 一起操 91N.com| 九月av在线| 五月婷中文娱乐综合| 丁香五月婷婷社区| 亚洲欧美国产A片免费观看| 久久久久九九九九视屏小说88| 五月色亭丁香| 五月天天综合网色婷婷| 99碰碰视频| 色丁香五月天| site:jszngf.com| 五月丁香 久久久| 五月丁香色狠狠干大屄| 色五月综合| 婷色五月天| 久久久精品色| 色综啪啪| 五月丁香久久网| 99成人网一区| 91高潮喷水久久久久久久久| 激情文学第四色婷婷丁香五月| 九月激情综合| 另类图片 五月激情| 思思热国产在线| 五月婷婷香| 性色婷婷| AV片一区在线观看| 色五月天丁香婷婷| 麻豆123区| 激情五月丁香六月综合AVXXXX| 91se在线观看| 久久婷婷影院| 天天综合久久| 丁香五月综合在线播放| 91超碰在线观看| 99精品国产在热久久| 无语停婷丁香网| 91日综合欧美| 日韩抽插操逼| 九九热啪啪| 免费观看欧美成人AA片爱我多深| 大香蕉Av在线| 国产精品蜜臀99| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 欧美精品999| 久久婷婷视频| 九九热10| www五月天com| 黄网在线免费观| 国产综合婷婷| 九九精品在线网| 五月丁香综合激情| 婷婷综合在线播放| 丁香美女主播视频在线观看| 九九亚洲| 色五月综合网| 色播五月综合网| 中国丰满熟女A片免费观| 综合久久五月| 九九亚洲小视频| 99热亚洲| 亚洲AV中文在线| 色情激情五月| 极品人妻VIDEOSSS人妻| 色综合久久天天综合网| 九九在线视频| www...com黄在线观看| 97色婷| 5五月综合网亚洲| 亚洲综合激情五月久久| 91九色精品女同系列| 色播丁香婷婷五月激情| AV大片在线播放| 久99| 五月天综合在线| av性爱网站| 强辱丰满人妻HD中文字幕| 三级毛片7979| 久久色9| 91碰操| 天天爽曰日爽| 1024操逼| www.狠狠干com| www.婷婷.com| 五月天无码| 激情综合网激情五月天| 欧美日韩国产伦精品日韩人妻一| 五月天激情国产综合婷婷| 五月婷久久久久综合| 婷婷5月色| 久久五月天综合| 久久久91| 九九热视频在线观看| 亚洲AV人人操| 婷婷丁香五月激情| 五月婷成人网| 精品夜夜澡人妻无码AV| 婷婷丁香五月天小说| 97自拍视频在线| 国产免费一区二区在线A片视频| 久久综合五月天| 久久精品五月天| 丁香五月色五月| 9久热在线视频精品| 婷婷影院欧美| 欧美精产国品一二三区| 丁香九月综合| 五月天另类激情在线| 区区久久妻| 人人爽天天爽| 九九热在线视频,| 激情98色婷婷五| 六月丁香成人网| AⅤ在线播放网| 婷婷五月婷| 色色色9 9 9| 天天摸天天透天天舔| 看全色黄大色大片| 狠狠干,狠狠操| 激情综合网婷婷五夜| 欧美va亚洲va在线播放| 久久机热探花| 久热91| 狠狠肏综合网| 九九中文字幕九| 超碰九九热| 五月丁香啪啪啪免费看| 色婷婷久久7777| 国产精品色婷婷久久久精品| 2050人人操免费工开爱| 婷婷五月色播天| 欧美久久婷婷| 五月丁香六月香香蕉| AV中文在线| 国产婷婷五月天| 五月天激情久久| 公的粗大挺进了我的密道| 99日在线观看视频| 五月天综合在线| 五月天激情子轮| 91凹凸在线| 国产在线aaa片一区二区99| 欧美爆乳一区二区三区| 婷婷成人网五月天| 男人天堂AV在线一区二区| 色综合婷婷| 色婷婷六月开心中文字| 五月天色色网站| 久久人人添人人爽添人人片αV | 日本久久精品18| 婷婷五月激情六月丁香| 欧美日韩成人h| 九九色婷婷| 丁香婷婷浪潮AV久久综合| av在线观看网站| 五月天婷婷久色| 五月婷婷色播| 99久久婷婷国产综合亚洲| 91九色精品熟女内射| 婷婷五月天成人综合网| 亚洲性爱99| 大香av| 最新无毒无码AV| 五月天久久久| 一区二区免费看| 婷婷成人综合五月| 激情六| 美女xx不卡| CHINESE熟女老女人HD视频 | 三人荫蒂添的好舒服A片| 五月丁香色| 激情五月婷婷综合秋霞| 婷婷激情五月| 激情综合网五月婷婷| 婷婷婷婷色| 另类小说五月天综合网| 色婷婷六月激情| 婷婷激情九月| 激情久久肏屄视频| 激情五月综合第一页| 无码免费人妻A片AAA毛片西瓜 | 婷婷丁香日韩五月| 女人天堂AV| 丁香五月影视| 国产在线中文字幕| 武则天精品久久| 五月天成人综合| 亚洲欧美一区二区三区四区爱爱动图| 色噜综| 99热这里只有精品69| 欧美天天爽| 7超碰自拍| 丁香五月婷婷综合精品素人| 99免费偷拍视频| yw.av| 色五月,com| 婷婷99视频在线| 久久AAAA片一区二区| 丁香五月天综合| 人妻激情综合| 婷婷五月天电影网| 97色婷婷| 日本黄色三级片内射| 久久久久亚洲AV综合| 成人国产欧美大片一区| 99只有精品9| 久综合4| 婷婷五月综合性爱| 丁香婷婷综合喷| 中文字幕成人日韩| 色婷婷888| 成功精品影院| 亚洲精品字幕在线观看| 五月婷婷视频| 五月婷中文娱乐综合| 99资源人人| 情一色一乱一伦一91A| 青青草99热久久精品国| 久久久人人操A V| 亚洲国产网站| 亚洲精品电影| 婷婷五月开心中文字幕色| 成人婷婷深爱综合网| 国产美女最新VA在线免费观看| ss99热| 亚洲激情精品| 日韩在线视频网站| 色色丁香| 天堂美国久久| 激情爱爱网站| 五月丁香婷婷无码A∨| 久久精品永久免费| 丁香五月婷婷大香蕉| 综合久久综合| 极骚大香蕉伊人| 射琪琪| 性日本激情| 色五月五月丁香| av色色国产| 99视频在线| 欧美一级色| 欧在线一区| 色99热| 久1色色| 俺去也在线视频| 中文av网站| 99re6久热只有精品6在线直播| 欧美成人AAA片一区国产精品| 五月九九综合| 安息电影在线观看完整版| 久久婷婷五月综合色丁香| 欧美日韩123| 国产AV一区二区三区最新精品| 色色五月天 亚洲| www.91九色| 婷婷五月开心中文字幕在线| 粉嫩av蜜桃av蜜臀av| 97在线99| 俺来也综合网精品一区| 人人操AV| 这里只有精品96| 色婷婷免费视频| 日日操,夜夜爽| 欧美精品999| 婷婷色狠狠| 五月丁香日本在线视频观看| 类似婷婷激情综合网站| 99色在线观看视频者| 99精品热视频| 99精品在线| 99燥99日| 美女五月天婷婷| www.婷婷.com| 五月婷婷色白丝| 夜夜操天天爽| 91午夜婷婷狠狠久久综合9色| 色婷婷99| 日本啪啪天堂| 色五月婷婷激情基地| hd五月婷婷在线| 91综合色| 国产成人在线不卡AV| 操你av| 亚洲精品又粗又大又爽A片| 五月丁香激情四射| 深爱激情五月网| 久久婷婷五月天大香蕉| 可以直接看的av网站| 色丁香久久| 狠狠色综合网| 五月婷婷婷| 啪啪色激情五月天| 热99AV网站| 婷婷婷狠狠| 亚洲精品操一操、噜一噜、摸一摸、爽 | 深爱五月亚洲| 性爱激情综合网| 成人婷婷五月天| 99热亚洲| 六月综和久久| 精品夜夜澡人妻无码AV| 开心五月婷婷六月丁香| 99精品视频在线观看| 热这里只有精| 亚洲色就是色色色| 亚州性爱99| 中文字幕操比影片| 丁香婷婷色情社区成人小说| www.cao.com久久| 色婷婷色五月丁香| 天天日天天肏天天奸| 2025最新亚洲激情在线| av大片在线| 天天色天天噜| 色综合中文综合网| 婷婷色五月婷| 黄网在线播放| 婷婷五月在线视频| 婷婷成人丁香色情基地30 | 五月天天爽| 激情五月成年| 婷婷大美在线| 五月伊人91| 深爱五月婷婷开心中文字幕| 夜精品无码A片一区二区蜜桃| 婷婷天天插天天爱| 婷婷99狠| 久青操| 九九色色| 天天揷综合网| 99色在线视频| 女性自慰系列第五页| 五月婷在线| 99福利视频| 婷婷综合偷拍| 99狠狠色| 婷婷色日本| 久久丁香九| 丁香九月激情| 五月婷婷开心亚州在线| 色婷婷a v| 婷婷久久五月天| 人妻激情久久| 开心激情站| 99色色热热| 欧美槡BBBB槡BBB少妇| 夜夜干夜夜操| 天天做天天爱天天日| 九色综合网| 综合99综合久久久久久久| 激情com| 国成人网| 亚州色色色| 五月天色网站| 九九色综合| 97亚洲视频在线| 色婷婷精品视频| 袁子仪视频观看| 激情久久综合网| 九九热精品在线| 激情二色月| 9操在线| 激情四射亚洲| 五月婷婷内射网| 丁香五月色色婷| 99热8| 99热综合网| 少妇激情五月婷婷| 丁香综合网| 色综合网页| 五月丁香啪啪| 天天视频亚洲| 亚洲 精品 综合 精品| 大伊香蕉玖玖爱| 久久婷婷五月综合色欧美| 91精品国产91久久久久青草| 99精品免费欧美小视频 | 婷婷六月激情丁香| 五月天婷婷操逼视频| 丁香五月激情久久麻豆| 97色干| 狠狠色婷婷7777久| 久久99热这里只频精品6学生| 91婷婷五月天综合视频| 色五月开心婷婷| 久久伦乱| 99超碰人人| 一本到不卡高清DVD| 久久精品99| 思思热在线| dingxiangtingtingliuyue| 国产日韩欧美性生活| 9+1视频网址| 五月天丁香久久| 婷婷激情四射五月天| 人妻久久久| 涩涩五月天| 玖玖婷婷五月天| 99热最新精品| 婷婷五月天AV网| 色狠狠色综合久久久绯色AⅤ影视| 色吧99| 天堂在线观看视频| 东京热五月婷婷| 免费观看全黄做爰的视频| 久久婷五月| 激情五月天婷婷五月天| 97色色网| 啪啪啪综合网| 大陆极品少妇内射AAAAAA| 欧美精品999| 99热精品免费| 国产精品色色| 97亚洲视频在线| 日本无码专区| av网站不卡在线| 雪千夏麻豆| 九九色黄色| 婷婷情色五月| 99超碰人人| 91成人电影| 玖玖婷婷五月天| 国产精品久久久99视频| 97色色色视屏| 伊人婷婷五月天av| 亚洲日韩欧美综合VA| 99视频精品在线| 五月婷婷综合潮喷| 五月丁香激情综合啪啪| 超碰人人操在线| 九九人妻福利| 婷婷五月天激情综合深爱| 婷婷黄色五月天在线视频| 深爱激情久久| 激情五月天小说网| 国产成人av在线| 激情综合网五月天| 久久久国产精品黄毛片| 色情成人五月天| 五月天婷婷基地综合网| 深爱五月激情综合| 五月丁香网中文字幕| 精品A√| 五月丁香婷婷综合久久| 婷婷色婷婷| 任我肏视频精品| 91精品国产91久久久久青草| 激情99。| 色五月亚洲| 丁香六月综合激情| 大香蕉丁香婷婷| 久久永久视频| 婷婷丁香五月六月激情| 久久亚洲无码| 中文字幕有多少字| 九九久久污| 天天做综合| 人人摸人人搞| 六月丁香网| 激情五月丁香六月综合AVXXXX| 91碰碰碰| 99爱在线精品视频免费观看| 丁香六月婷| 97婷婷丁香五月综合| 丁香六月婷婷激情综合| 九九九午夜视频| wwxx日本| 九九99九九99九九99视频网| 丁香五月婷婷免费视频| 中美日韩成人在线| 亚洲色模骚货| 五月天婷婷基地| 嫩草视频| 男人天堂伊人五月丁香| 九色无码| 婷婷成人av| 成人深爱丁香五月| 色五月婷婷在线| 亚洲岛国电影| 91精品电影18T| 国产精品日日躁夜夜躁| 色色色色色九九九九九| 久久老码第一| 中文字幕在线日亚州9| 五月婷婷9| 99性爱无码| 日韩无码专区| 伊人五月婷婷| 五月天伊人| 五月婷婷综合成人| 深爱五月天 开心网| 夜夜爱网站| 日本一级| www,超碰| 九九99男女视频在线观看| 99视频精品全部免费 在线| 一级二级色大片| 日韩啪啪自拍| 丁香五月六月欧美| 国产黄大片在线观看画质优化| 97色色色| 一起草av| 五月天激情四射| 4399在线观看免费毛片| 天天天日天天天干| 国产午夜伦鲁鲁| 成人婷婷色五月天| 亚洲午夜AV| 成人片在线播放| 99色中文| 午夜成人天堂久久无码日韩久久| 激情五月六月| 亚洲成人网址在线观看| 色5月婷婷| 九色99视频| 涩涩婷婷五月| 夜色热久| 婷婷五月天色| 亚洲成人网站在线| 激情床戏| www.久久99| 丁香婷婷影院| 亚洲天堂AV免费片| 大战熟女丰满人妻AV| 97日本在线播放| 79色色免费| 日韩欧美成人网| 狠狠色噜噜色狠狠狠综合久久成人波 | 婷婷五月天激情小说| 五月天激情影院| 丁香六月情| 婷色五月天| 99热最新| 26uuu.| 99热综合| 亚洲女婷婷五月基地综合久久久| 成人超碰网| 毛片色五月| 五月丁香色婷婷久久| 九九九色综合| 夜夜骑操AV| 噼里啪啦完整版中文在线观看| 色婷婷伦理| 91av成人| 9l视频自拍9l九色9l成人| 九九99精品| 99精品偷自拍| 亚洲六月色| 亚洲婷婷五月| 亚洲激情丁香五月天色| 亚洲精品V天堂中文字幕| 五月天婷婷视频30| 欧美日韩精品一区二区三区钱| 人人操AV| 97人人干人人操| 国产肥白大熟妇BBBB视频| 天天干狠狠艹| av久热| 欧美成人精品A片免费一区99| 丁香五月天激情网| 中文精品在| 中文字幕人妻熟女在线| se影音资源在线观看| 色欲影香| 国产精品扒开腿做爽爽爽A片唱戏| 五月婷婷丁香综合| www色五月| 久久色大香蕉| 国产免费AV网站| 婷婷免费无视频| 色婷婷影| 国产午夜成人免费看片无遮挡| 久热免费| 五月婷婷丁香五月亚洲色| 久久婷婷东京热大香樵| 五月激情影院| 日韩啊啊啊| 色噜噜,噜噜色| 99人人操人人操人人精| 成人精品视频99在线观看免费 | 九热视频免费观看| 天天日,天天干,天天操| 综合色播| 婷婷五月综合在线视频| 五月婷网| 欧洲区自拍| 国产欧美熟妇另类久久久 | 99色热| 五月天综合区| 99综合视频一体| 五月香蕉网| 久久人妻少妇嫩草AV| 五月婷视频| 另类国产综合| 欧美欧盟性爱网| av无码电影| 91麻豆国产三级精品福利在线观看 | 天天日综合| 先锋av性爱成人电影| 天天日天天做天天舔| 人妻中文av| 丰满少妇猛烈A片免费看观看| 五月婷婷综合激情网| 亚洲成人综合网在线免费观看| 99热只有| 99热这里是精品| 97色久| 五月婷婷AV| 久久婷婷综合五月趴| 开心激情久久久久久久| 《战争与艾拉》完整版| 亚洲综合成人网| 综合五月激情| 俺来也狠狠| 国产精产国品一二三在观看| 五月婷婷久久综合| 久99热| 五月丁香婷婷成人网| 91大屁股| 亚洲、热| 婷婷激情五月天亚洲综合| 欧美成人无码一区二区三区| 五月婷婷大香蕉| 久久九九爽| 色婷婷久久综合| 97AV在线视频| 91AV婷婷| 五月丁香色| 超碰成人在线观看| 99久久.www| 婷婷丁香五月激情密臀av| 日韩五月婷婷| 五月久久丁香| 亚洲国产成人AV在线| 色婷婷激情视频| 五月婷婷 自拍| 一区=区操屄高清大全av| 成人做爰黄A片免费看直播室男男| www.婷婷五月天| 极品人妻VIDEOSSS人妻| 激情五月天婷婷| 国产看真人毛片爱做A片| 欧美英丁香开心快乐六月天网| 亚洲色色精品| 激情五月天色婷婷| 丁香五月婷婷影院| 欧美激情综合色综合啪啪五月| 色五月五月天色婷婷色五月| 久久久久激情| 五月天婷婷在线播放| 97人人操人人干| 嫩草AV久久伊人妇女超级A| 国产精品色情AAAAA片软件| 九月丁香八月婷婷加勒比| 久久丁香网| 97碰碰视频| 色五月天激情| 91久久久久久久| 欧美噜噜免费观看| 色色色色色色综合| 五月婷婷综合丁香视频| 四虎成人精品永久免费AV九九| 久草热久草在线视频| 在线一起草av| 久久五月激情| 亚洲 无码 中文字幕 中出| 99九九精品| av狠狠操| 婷婷5月久久综合网站| 中文资源在线a| 五月激情精品视频| 天天激情| 99视频在线精品免费观看2| 亚洲精品无人区| 一操久久| renrencaoni| 丁香六月色婷婷| 日亚二欧美| 丁香五月成人| 淫视馆av三区| 99视频久久久| 婷婷五月免费观看| 天天干天天插| 激情综合无码| 99在线视频网址在线观看| 伊人网啪啪| 亚洲 精品 综合 精品| 色婷五月天激情| 97色色色| 亚洲蜜乳AV| www.久久爱.com| 视频这里只有精品16| 99毛片| 亚洲黄网AV| 嫩草视频在线观看| 伊人高清无码| 激情AV中文| 激情网站综合五月天| 九九大香视频| 色伊人91在线视频| 99自拍视频| 五月丁香六月色婷婷| 91色五月| 中文字幕视频色婷婷| 九九99在线视频| 婷婷综合五月激情| 婷婷五月天堂| 丁香久久激情俄| 美臀自射自家人妻| 丁香五月综合婷婷| 色婷婷aV四虎| 色五月激情综合| 99视频精品在线| 婷婷亚州综合| 国产六月婷婷| 91丨九色丨熟女|老版| 懂色av粉嫩AV蜜臀AV| 日日干五月天婷婷| 婷婷五月天天爽| 久久婷婷青青| 五月丁香五月激情综合色综合| 中文无码婷婷| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 亚洲欧美婷婷五月色综合| 九九热青青草| 亚洲噜色| 六月丁香网| 久久综合干| 五月丁香六月欧美综合网站| 激情五月色播五月| 亚洲妇女熟BBW| 色五月涩涩婷婷蜜桃| 婷婷综合在线| 五月激情网站| 深爱激清网| 操91综合网| 亚洲五月婷婷在线| 99热66| 人妻操逼视频。| 淫视馆AV在线| 日本久久精品18| 中文字幕色色| 欧美婷婷丁香社区在线播放| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 色色亚洲99com| 亚洲久久婷婷| 国产精产国品一二三在观看| 热久久999| 狠狠五月激情婷婷直播片| 黄色片avv| 狠狠搞亚洲| 亚洲超级碰| 婷婷五月激情的图片| 激情综合婷婷| 伊人在线视频| 婷婷玉月丁香五月在线视频| 欧美色一级色| 天天插天天插天天插天天插| 日本三日本三级少妇三级66| 婷婷综合亚洲| 99久久九九| 亚洲第一成人无码A片| 日逼免费视频| 五月丁香婷婷啪啪综合| 久久激情五月天| 五月婷五月婷伊人伊人五月婷| 中文字幕在线免费观看视频| 婷婷五月情色| 99精品网址| 五月婷婷导航| 五月婷婷伦理| 婷婷五月丁香图片人人操| 五月天激情国产综合婷婷| 天天操天天曰天天射| 久久综合激情| 天天干夜夜欢| 欧美啪啪9| 色五月丁香五月| 99热这里只有精品国产精品| 婷婷午夜综合| 一点色成人网| 色播五月婷婷五月| 大香蕉人妻| 成人无码精品1区2区3区免费看 | 久大香蕉| 亚洲五月天天| 禁片二区| 婷婷91| 久久婷婷五月天激情唯美| 天堂中文国产| 亚洲乱码日产精品BD| 丁香婷婷月| 99综合视频在线| 噜噜色五月| 九九99在线观看视频| 丁香五月天社区婷婷| 婷婷色丁香五月| 丁香六月无码| 9|无码久久久久久| 婷婷不卡基地| 色综合色色| 五月婷婷六月丁香综合| 久热超碰| 九月婷婷综合网| 99热色精品| 色五月欧美| 丁香色啪综合| 五月丁香六月婷| 91精选国| 2018国产大陆天天弄| 开心五月天激情网| 色婷婷六月精品| 性爱网五月天| 久青草大香蕉| 欧美激情综合| 亚洲精品国产成人AV在线| 婷婷激情网五月天| 婷婷五月蜜桃成人桃色丁香| 99er热精品视频| 丁香情色五月| 91久操| 丁香色成人| 亚洲欧州色情在线观看| 多精窝99在线视频| 91|九色|动漫| 五月天激情日色在线| 久久97久久99久久综合欧美| 中文字幕在线播放视频| 天天爱天天操| 亭亭五月天黑人2014| 思思热99er在线视频| 天天肏在线观看| 婷婷综合一二三| 色五月综合激情网| 强辱丰满人妻HD中文字幕| 色婷婷97| 热久久91| jiZZdr| 九九热最新地址| 精品成人无码A片观看香草视频 | 超碰色综合| 婷婷五月色| 久久视频这里99| 丁香六月天婷婷开心综合| 色色亚洲无码| 这里只有精品99视频| 2022人人操人人看| 国产色99| 天天操五月天| 色婷婷色和| 五月色丁香婷婷综合| 青青草原亚洲久| 爱操天堂| 六月五月天婷婷涩播在线| 婷婷丁香五月综合网| 国产肥白大熟妇BBBB视频| 99国产精品久久久久久久久久久 | 思思热国产在线| 91久久婷婷人人澡草| 成人婷婷五月天| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 婷婷伊人综合中文字幕| 狠狠狠狠狠狠狠狠狠狠狠色宗合图片| 麻豆AV一区二区三区| 成人做爰高潮A片免费视频| 激情99| 成熟妇人A片免费看网站| 激情五月激情综合网| 亚洲欧美在线观看| 嫩BBB搡BBBB榛BBBB| 七月丁香婷婷 色色| 激情5月婷婷| 99天堂网最新| 五月丁香久久色| 97色片| 五月天婷婷AV| 色婷婷99| 美女100%露全身无挡网站| 啄木鸟黑丝一区二区| 色播婷婷五月天| 激情小说五月欧美亚洲丁香| 亚洲va成人va成人va在线观看| 天天舔天天摸| 日日夜夜婷婷| 九九热视频在线观看| 久九男女天堂| 欧洲区自拍| 9福利性视频欧美| 亚洲国产色婷婷| 五月亭亭激情综合| 五月亭亭性| 亚洲成人av在线| 激情六月婷婷| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 99精彩视频| 啪啪日本欧美| 激情综合在线播放| 综合久久99| 婷婷五月天激情综合| 天天干夜夜谢| www.久久| 人妻日日日| 日本久久精品18| 婷婷和五月天| 激情婷婷网| 婷婷玖玖五月天| 少妇高潮A片无套内谢麻豆传| 激情五月天视频| 亚洲天堂碰碰婷婷| 五月五婷婷网| 亚洲一区二区无码蜜乳av| 五月婷婷激情久久| 九九在线精品| 久久一级片| 五月六月婷婷激情网| 可以免费看的AV网站| 伊人激情影院| 九九色video| 狠狠操.com| 人人爱人人添| 婷婷久久大香蕉| 色www99| 久久永久网址| 六月婷婷五月天| 99这里有精品| 秋霞丝袜啪啪啪| 婷婷五月天播| 99狠狠| 婷婷丁香五月社区亚洲| 婷婷射丁香| 第四色首页| 99∨VTV| 91久久综合| 综合五月亭亭9| 99成人| 色婷婷小视频| 五月婷五月婷伊人伊人五月婷| 99热激情| 精品夜夜澡人妻无码AV| www.91操| 六月丁香五月天| 丁香五月色| 91日本在线| 九九99视频| 琪琪色综合网站| 丁香六月婷婷开心| 亚洲激情综合| 亚洲永远av在线播放| 亭亭丁香aV| 91九色精品女同系列| 啪啪东京热| 天天拍夜夜爽日日| 五月婷婷在线视频| 91无码高清| 99热99热在线| 91制片厂久久久国产电影| 色综合色婷婷色伊人| www.91久久| 超碰AV成人| 婷婷操婷婷干婷婷射| www.婷婷久久五月天| 韩国情人在线电视剧免费观看高清版全集 | 天天爽天天草| 婷婷五月色| 五月丁香A片| 亚洲婷婷丁香| 五月婷婷,狠狠操| 欧美婷婷五月天| 国内自拍97在线| 丁香六月激情蜜桃| 99精品无码| 只有精品在线观看| 伊人五月综合网| 婷婷欧美综合| 色婷婷综合久久久久| 超碰91人人操| 色五月五月天色婷婷色五月| 五月天激情综合网| 天堂草在线观看| 亚洲AV永久无码影院黑人| 99看片| 伊人大香蕉综合在线| 开心婷婷五月| 99热99久久| 日本在线视频播放91|