亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

擴(kuò)展盧卡斯定理詳解:解決組合數(shù)取模在合數(shù)模數(shù)下的計(jì)算難題

擴(kuò)展盧卡斯定理詳解:解決組合數(shù)取模在合數(shù)模數(shù)下的計(jì)算難題 1. 項(xiàng)目緣起從一道“卡脖子”的模數(shù)組合數(shù)說起幾年前我在準(zhǔn)備一場(chǎng)算法競(jìng)賽時(shí)遇到了一道讓我記憶猶新的題目。題目本身描述很簡(jiǎn)單給定一個(gè)巨大的組合數(shù) C(n, m)以及一個(gè)模數(shù) P要求計(jì)算 C(n, m) mod P 的值。這聽起來像是數(shù)論基礎(chǔ)題我信心滿滿地寫下了標(biāo)準(zhǔn)的預(yù)處理階乘和逆元的代碼。然而當(dāng)我提交時(shí)系統(tǒng)返回了一個(gè)大大的“Wrong Answer”。仔細(xì)一看模數(shù) P 的描述心里頓時(shí)涼了半截——這個(gè) P 不是一個(gè)質(zhì)數(shù)甚至不是一個(gè)質(zhì)數(shù)的冪而是一個(gè)任意的正整數(shù)比如 10007 或者 999983 這種質(zhì)數(shù)還好但題目給的可能是 1000、2016 甚至 1000000007 * 1000000009 這種合數(shù)。這就是經(jīng)典的“組合數(shù)取模”問題在模數(shù)非質(zhì)數(shù)時(shí)遇到的困境。我們熟悉的用費(fèi)馬小定理或擴(kuò)展歐幾里得求逆元的方法其前提是模數(shù)為質(zhì)數(shù)這樣才能保證在模意義下每個(gè)非零數(shù)都有乘法逆元。當(dāng)模數(shù)是合數(shù)時(shí)許多數(shù)沒有逆元整個(gè)基于階乘和逆元的遞推公式就失效了。我當(dāng)時(shí)卡在這道題上很久直到后來系統(tǒng)學(xué)習(xí)了“擴(kuò)展盧卡斯定理”Extended Lucas Theorem才豁然開朗。而 P4720正是洛谷上一道專門練習(xí)這個(gè)定理的經(jīng)典模板題。今天我就結(jié)合自己踩坑和實(shí)戰(zhàn)的經(jīng)驗(yàn)把這個(gè)強(qiáng)大工具的原理、實(shí)現(xiàn)細(xì)節(jié)和避坑指南掰開揉碎了講清楚。2. 核心問題拆解為什么普通盧卡斯定理不夠用在深入擴(kuò)展盧卡斯之前我們必須先理解普通盧卡斯定理Lucas Theorem的局限性這樣才能明白我們到底要解決什么問題。2.1 盧卡斯定理的適用場(chǎng)景與限制普通盧卡斯定理表述為對(duì)于質(zhì)數(shù) p有 C(n, m) ≡ C(n mod p, m mod p) * C(n/p, m/p) (mod p)。這是一個(gè)遞歸公式能將大規(guī)模組合數(shù)計(jì)算分解為小規(guī)模組合數(shù)計(jì)算通常配合預(yù)處理小范圍的階乘和逆元來快速求解。它的效率很高代碼也很簡(jiǎn)潔。然而它的核心限制就藏在前提里模數(shù) p 必須是質(zhì)數(shù)。這是因?yàn)樵谶f歸的底層我們需要計(jì)算 C(n‘, m’) mod p這通常通過公式 C n! / (m! * (n-m)!) 來計(jì)算而除法在模運(yùn)算中需要轉(zhuǎn)化為乘以其乘法逆元。逆元存在的充要條件就是該數(shù)與模數(shù)互質(zhì)。當(dāng)模數(shù)是質(zhì)數(shù) p 時(shí)只要分母的階乘不被 p 整除其逆元就一定存在。但一旦模數(shù) p 是合數(shù)分母的階乘很可能與模數(shù)有公因子導(dǎo)致逆元不存在整個(gè)計(jì)算鏈就斷裂了。2.2 合數(shù)模數(shù)帶來的真正挑戰(zhàn)當(dāng)模數(shù) P 是合數(shù)時(shí)直接計(jì)算 C(n, m) mod P 的難點(diǎn)可以歸結(jié)為兩點(diǎn)非互質(zhì)導(dǎo)致的逆元缺失在計(jì)算 n! / (m! * (n-m)!) 時(shí)分母可能與模數(shù) P 不互質(zhì)因此無法直接求逆元進(jìn)行模除。模數(shù)非質(zhì)數(shù)中國剩余定理CRT成為橋梁解決這個(gè)問題的核心思路是將合數(shù)模數(shù) P 質(zhì)因數(shù)分解為 P p1^k1 * p2^k2 * ... * pt^kt。如果我們能分別求出 C(n, m) 對(duì)每個(gè)質(zhì)數(shù)冪模數(shù) pi^ki 的余數(shù) ai即求解一系列同余方程x ≡ a1 (mod p1^k1) x ≡ a2 (mod p2^k2) ... x ≡ at (mod pt^kt) 那么根據(jù)中國剩余定理我們就可以唯一確定出 x 在模 P 意義下的值。所以問題的關(guān)鍵轉(zhuǎn)化為如何計(jì)算 C(n, m) mod p^k其中 p 是質(zhì)數(shù)k是正整數(shù)。這就是擴(kuò)展盧卡斯定理要解決的核心子問題。普通盧卡斯定理處理的是 mod pk1而擴(kuò)展盧卡斯將其推廣到了 mod p^k。3. 擴(kuò)展盧卡斯定理的核心原理剝離p因子與遞歸求解計(jì)算 C(n, m) mod p^k 不能直接用階乘逆元因?yàn)榉帜缚赡馨蜃?p導(dǎo)致與模數(shù) p^k 不互質(zhì)。擴(kuò)展盧卡斯定理的精妙之處在于它通過一種“剝離”技巧將階乘中所有 p 的因子分離出來單獨(dú)處理。3.1 第一步將階乘分解為“與p互質(zhì)部分”和“p的冪次部分”定義函數(shù)F(n, p, pk)用于計(jì)算 n! 中所有與 p 互質(zhì)的因子的乘積再對(duì) pk (即 p^k) 取模。同時(shí)我們記錄下 n! 中 p 這個(gè)質(zhì)因子的總次數(shù)記為G(n, p)。以 n22, p3 為例計(jì)算 22! mod 3^2 22! 1 * 2 * 3 * 4 * 5 * 6 * 7 * 8 * 9 * 10 * 11 * 12 * 13 * 14 * 15 * 16 * 17 * 18 * 19 * 20 * 21 * 22 我們可以把它重寫為 22! (124578101113141617192022) * (36912151821) 進(jìn)一步把第二組每個(gè)數(shù)中的因子3提出來 22! (124578101113141617192022) * 3^7 * (1234567) 你會(huì)發(fā)現(xiàn)(124578101113141617192022) 這些數(shù)都與3互質(zhì)而 (1234567) 正好是 floor(22/3) 7 的階乘即 7!。于是我們得到一個(gè)遞歸定義 n! ≡ F(n, p, pk) * p^{G(n, p)} * (n/p)! (mod pk) 其中F(n, p, pk)計(jì)算了1到n中所有不被p整除的數(shù)的乘積模 pk。G(n, p) floor(n/p) floor(n/p^2) floor(n/p^3) ...即n!中質(zhì)因子p的個(gè)數(shù)。(n/p)!是遞歸部分。對(duì)于F(n, p, pk)的計(jì)算也有技巧。因?yàn)槟?shù)是 pk而1到pk中與p互質(zhì)的數(shù)會(huì)形成一個(gè)長(zhǎng)度為 φ(pk)pk-p^{k-1} 的循環(huán)節(jié)。我們可以先計(jì)算一個(gè)完整循環(huán)節(jié)內(nèi)所有與p互質(zhì)的數(shù)的乘積模 pk記為prod。那么n 以內(nèi)這樣的完整循環(huán)節(jié)有n / pk個(gè)每個(gè)循環(huán)節(jié)的貢獻(xiàn)是prod^{n/pk} mod pk。最后再乘以剩余的不完整部分即從floor(n/pk)*pk 1到 n 之間且與p互質(zhì)的數(shù)的乘積。3.2 第二步計(jì)算組合數(shù)模 p^k有了上面的分解組合數(shù)可以表示為 C(n, m) n! / (m! * (n-m)!) 將其用 F 和 G 函數(shù)表示 C(n, m) [F(n) * p^{G(n)}] / [F(m) * p^{G(m)} * F(n-m) * p^{G(n-m)}] [F(n) / (F(m) * F(n-m))] * p^{G(n) - G(m) - G(n-m)}我們的目標(biāo)是求 C(n, m) mod p^k。首先計(jì)算指數(shù)部分e G(n) - G(m) - G(n-m)。如果 e k說明組合數(shù)本身包含了至少 p^k 這個(gè)因子那么 C(n, m) mod p^k 0。如果 e k則繼續(xù)。計(jì)算互質(zhì)部分num F(n, p, pk) * inv(F(m, p, pk), pk) * inv(F(n-m, p, pk), pk) mod pk。這里inv(a, pk)表示 a 在模 pk 意義下的逆元。由于 F 函數(shù)計(jì)算的結(jié)果都是與 p 互質(zhì)的所以它們對(duì)模數(shù) pk 的逆元一定存在可以用擴(kuò)展歐幾里得算法求解。最終結(jié)果C(n, m) mod p^k num * p^e mod pk。3.3 第三步中國剩余定理CRT合成最終答案假設(shè)我們對(duì)合數(shù)模數(shù) P 分解后得到了 t 個(gè)方程 x ≡ ans_i (mod pi^ki), i1, 2, ..., t。 其中 ans_i 就是我們用上述方法計(jì)算出來的 C(n, m) mod pi^ki。中國剩余定理的求解過程如下計(jì)算M P。對(duì)于每個(gè) i計(jì)算Mi M / (pi^ki)。計(jì)算Mi在模pi^ki意義下的逆元inv_i因?yàn)?Mi 與 pi^ki 互質(zhì)逆元存在。最終解為x Σ(ans_i * Mi * inv_i) mod M。這一步在算法實(shí)現(xiàn)中通常使用“增量法”合并同余方程每次合并兩個(gè)方程逐步得到最終解比一次性計(jì)算所有逆元更易于編碼。4. 手把手實(shí)現(xiàn)擴(kuò)展盧卡斯模板理解了原理我們來看代碼實(shí)現(xiàn)。我將結(jié)合 P4720 這道模板題的要求給出一個(gè)清晰、健壯且包含詳細(xì)注釋的 C 實(shí)現(xiàn)。代碼會(huì)分為幾個(gè)核心函數(shù)。4.1 基礎(chǔ)工具函數(shù)快速冪與擴(kuò)展歐幾里得這些是數(shù)論算法的基石。// 快速冪計(jì)算 (base^exp) % mod long long qpow(long long base, long long exp, long long mod) { long long res 1 % mod; // 注意 mod1 的情況 base % mod; while (exp) { if (exp 1) res (res * base) % mod; base (base * base) % mod; exp 1; } return res; } // 擴(kuò)展歐幾里得算法求解 ax by gcd(a, b) // 返回 gcd(a, b)并通過引用返回 x, y long long exgcd(long long a, long long b, long long x, long long y) { if (b 0) { x 1; y 0; return a; } long long d exgcd(b, a % b, y, x); y - (a / b) * x; return d; } // 求 a 在模 mod 下的逆元前提是 gcd(a, mod) 1 long long inv(long long a, long long mod) { long long x, y; exgcd(a, mod, x, y); // 將逆元調(diào)整到 [0, mod) 范圍內(nèi) return (x % mod mod) % mod; }4.2 核心函數(shù) F計(jì)算剔除了p因子的階乘模 p^k這個(gè)函數(shù)對(duì)應(yīng)原理部分的F(n, p, pk)。/** * 計(jì)算 n! 中所有與質(zhì)數(shù) p 互質(zhì)的因子的乘積再對(duì) pk (p^k) 取模。 * param n 階乘的上限 * param p 質(zhì)數(shù) * param pk p^k即當(dāng)前處理的質(zhì)數(shù)冪模數(shù) * return n! 中與 p 互質(zhì)部分的乘積模 pk */ long long factorial_prime(long long n, long long p, long long pk) { if (n 0) return 1; long long res 1; // 1. 處理完整循環(huán)節(jié)周期為 pk每個(gè)周期內(nèi)與p互質(zhì)的數(shù)乘積相同 // 計(jì)算一個(gè)周期內(nèi)的乘積 long long cycle_prod 1; for (long long i 1; i pk; i) { if (i % p ! 0) { // 與p互質(zhì) cycle_prod (cycle_prod * i) % pk; } } // 共有 n/pk 個(gè)完整周期 res qpow(cycle_prod, n / pk, pk); // 2. 處理最后一個(gè)不完整的周期 for (long long i (n / pk) * pk 1; i n; i) { if (i % p ! 0) { res (res * (i % pk)) % pk; // i % pk 防止溢出且結(jié)果等價(jià) } } // 3. 遞歸處理 (n/p)! 中與p互質(zhì)的部分 // 因?yàn)?n! (1*2*...*n) (所有與p互質(zhì)的數(shù)) * p * (所有與p互質(zhì)的數(shù)) * ... // 遞歸部分正是 (n/p)! 中與p互質(zhì)的部分 return res * factorial_prime(n / p, p, pk) % pk; }注意這里有一個(gè)非常關(guān)鍵的優(yōu)化和易錯(cuò)點(diǎn)。在計(jì)算cycle_prod時(shí)我們是在模pk下計(jì)算1到pk之間與p互質(zhì)的數(shù)的乘積。pk可能很大比如 5^10直接循環(huán)pk次在n很大時(shí)會(huì)被多次調(diào)用可能成為性能瓶頸。在實(shí)際的高性能模板中通常會(huì)預(yù)處理這個(gè)值。但為了代碼清晰這里展示了最基本的邏輯。在真正解題時(shí)需要根據(jù)數(shù)據(jù)范圍權(quán)衡是否預(yù)處理。4.3 核心函數(shù) G計(jì)算 n! 中質(zhì)因子 p 的個(gè)數(shù)這個(gè)函數(shù)用于計(jì)算指數(shù)e。/** * 計(jì)算 n! 中質(zhì)因子 p 的個(gè)數(shù)。 * 公式G(n, p) floor(n/p) floor(n/p^2) floor(n/p^3) ... * param n 階乘的上限 * param p 質(zhì)數(shù) * return n! 中質(zhì)因子 p 的個(gè)數(shù) */ long long count_prime_factor(long long n, long long p) { long long cnt 0; while (n) { cnt n / p; n / p; } return cnt; }4.4 核心函數(shù) C_mod_pk計(jì)算組合數(shù)模質(zhì)數(shù)冪這個(gè)函數(shù)整合前兩步計(jì)算 C(n, m) mod p^k。/** * 計(jì)算組合數(shù) C(n, m) 對(duì)質(zhì)數(shù)冪 p^k 取模的結(jié)果。 * param n 組合數(shù)上標(biāo) * param m 組合數(shù)下標(biāo) * param p 質(zhì)數(shù) * param pk p^k * return C(n, m) mod pk */ long long combination_mod_prime_power(long long n, long long m, long long p, long long pk) { if (m n) return 0; if (m 0 || m n) return 1 % pk; // 1. 計(jì)算指數(shù) e G(n) - G(m) - G(n-m) long long e count_prime_factor(n, p) - count_prime_factor(m, p) - count_prime_factor(n - m, p); if (e 0) { // 實(shí)際上e永遠(yuǎn)0這里判斷是為了邏輯清晰也可以判斷 if (e k) return 0; // 如果 e k (即pk中p的冪次)那么結(jié)果模pk為0。這里k可以通過pk和p計(jì)算得到。 // 簡(jiǎn)便寫法如果 e 足夠大使得 p^e 是 pk 的倍數(shù)則直接返回0。 // 更嚴(yán)謹(jǐn)?shù)淖龇ㄊ怯?jì)算 k log(pk) / log(p) 的整數(shù)部分然后比較 e 和 k。 // 下面我們采用另一種方式先計(jì)算互質(zhì)部分如果 e 很大最后乘 p^e 時(shí)再取模。 } else { // 理論上不會(huì)出現(xiàn)負(fù)數(shù)因?yàn)榻M合數(shù)是整數(shù) return 0; } // 2. 計(jì)算互質(zhì)部分F(n) / (F(m) * F(n-m)) long long fn factorial_prime(n, p, pk); long long fm factorial_prime(m, p, pk); long long fnm factorial_prime(n - m, p, pk); long long num fn * inv(fm, pk) % pk * inv(fnm, pk) % pk; // 3. 乘以 p^e long long pe qpow(p, e, pk); // 注意這里是對(duì) pk 取模因?yàn)樽罱K結(jié)果是模 pk // 但是當(dāng) e k 時(shí)p^e mod pk 為 0所以這一步包含了 ek 時(shí)結(jié)果為0的情況。 return num * pe % pk; }踩坑點(diǎn)在計(jì)算num時(shí)一定要先對(duì)fm和fnm分別求逆元然后連乘取模。不能先計(jì)算fm * fnm % pk再求一次逆元因?yàn)槌朔赡芷茐幕ベ|(zhì)性導(dǎo)致逆元不存在。必須保證每個(gè)與pk互質(zhì)的數(shù)單獨(dú)求逆。4.5 核心函數(shù) exLucas主函數(shù)與CRT合并這是對(duì)外的接口處理合數(shù)模數(shù) P。/** * 擴(kuò)展盧卡斯定理主函數(shù)計(jì)算 C(n, m) mod PP 可為任意正整數(shù)。 * param n 組合數(shù)上標(biāo) * param m 組合數(shù)下標(biāo) * param P 模數(shù)任意正整數(shù) * return C(n, m) mod P */ long long exLucas(long long n, long long m, long long P) { if (m n) return 0; if (m 0 || m n) return 1 % P; long long mod P; // 存儲(chǔ) (質(zhì)數(shù), 質(zhì)數(shù)冪, 余數(shù)) 三元組 vectortuplelong long, long long, long long factors; // 1. 對(duì)模數(shù) P 進(jìn)行質(zhì)因數(shù)分解 for (long long i 2; i * i mod; i) { if (mod % i 0) { long long pk 1; while (mod % i 0) { mod / i; pk * i; } // 計(jì)算 C(n, m) mod i^pk long long res combination_mod_prime_power(n, m, i, pk); factors.emplace_back(i, pk, res); } } if (mod 1) { // 處理剩余的大質(zhì)數(shù) factors.emplace_back(mod, mod, combination_mod_prime_power(n, m, mod, mod)); } // 2. 如果只有一個(gè)質(zhì)因數(shù)直接返回結(jié)果 if (factors.size() 1) { return get2(factors[0]); } // 3. 使用中國剩余定理CRT合并所有同余方程 // 增量法合并x ≡ a1 (mod m1), x ≡ a2 (mod m2) // 合并為 x ≡ new_a (mod new_m)其中 new_m m1 * m2 long long a1 get2(factors[0]), m1 get1(factors[0]); for (size_t i 1; i factors.size(); i) { long long a2 get2(factors[i]), m2 get1(factors[i]); // 合并方程x a1 k1*m1 a2 k2*m2 // 即 k1*m1 - k2*m2 a2 - a1 // 令 g gcd(m1, m2)用擴(kuò)展歐幾里得求解 long long k1, k2; long long g exgcd(m1, m2, k1, k2); long long c a2 - a1; if (c % g ! 0) { // 理論上不會(huì)發(fā)生因?yàn)楦髂?shù)兩兩互質(zhì) return -1; // 無解 } long long t m2 / g; // 調(diào)整 k1 為最小非負(fù)特解 k1 (k1 * (c / g) % t t) % t; // 新的余數(shù)和模數(shù) long long new_a (a1 k1 * m1) % (m1 / g * m2); // 注意新模數(shù)是 lcm(m1, m2) m1/g*m2 long long new_m m1 / g * m2; a1 new_a; m1 new_m; } return (a1 % P P) % P; // 確保結(jié)果在 [0, P) 范圍內(nèi) }5. 實(shí)戰(zhàn)測(cè)試與性能優(yōu)化要點(diǎn)將上述代碼整合就可以通過 P4720 這道模板題了。輸入 n, m, P調(diào)用exLucas(n, m, P)即可。但是直接使用上面的代碼可能會(huì)在數(shù)據(jù)較大時(shí)超時(shí)我們需要關(guān)注幾個(gè)性能瓶頸和優(yōu)化點(diǎn)。5.1 性能瓶頸分析factorial_prime函數(shù)中的循環(huán)計(jì)算cycle_prod每次遞歸調(diào)用都會(huì)計(jì)算一次從1到pk的循環(huán)積。如果pk很大比如 10^6 級(jí)別且n也很大導(dǎo)致遞歸深度不淺這個(gè)開銷是巨大的。遞歸調(diào)用factorial_prime遞歸本身有一定開銷但更主要的是重復(fù)計(jì)算。factorial_prime(n/p, p, pk)會(huì)再次計(jì)算cycle_prod。質(zhì)因數(shù)分解對(duì) P 的分解是 O(√P) 的在 P 很大如 10^9時(shí)可以接受但也是常數(shù)開銷。5.2 關(guān)鍵優(yōu)化策略優(yōu)化1預(yù)處理循環(huán)節(jié)乘積這是最重要的優(yōu)化。對(duì)于給定的p和pkcycle_prod是一個(gè)定值。我們可以在計(jì)算combination_mod_prime_power之前先計(jì)算并存儲(chǔ)它避免在遞歸中重復(fù)計(jì)算。// 在 combination_mod_prime_power 函數(shù)內(nèi)部或外部預(yù)處理 long long cycle_prod 1; for (long long i 1; i pk; i) { if (i % p ! 0) { cycle_prod cycle_prod * i % pk; } } // 然后將 cycle_prod 作為參數(shù)傳遞給 factorial_prime或者設(shè)為全局/靜態(tài)變量。 // 修改 factorial_prime 函數(shù)接收這個(gè)預(yù)計(jì)算好的 cycle_prod。 long long factorial_prime(long long n, long long p, long long pk, long long cycle_prod) { if (n 0) return 1; long long res qpow(cycle_prod, n / pk, pk); // ... 剩余部分不變 }優(yōu)化2將遞歸改為迭代factorial_prime的遞歸形式清晰但可以改為迭代形式效率略高且避免了遞歸棧溢出的風(fēng)險(xiǎn)雖然此題一般不會(huì)。long long factorial_prime_iter(long long n, long long p, long long pk, long long cycle_prod) { long long res 1; while (n 0) { res res * qpow(cycle_prod, n / pk, pk) % pk; for (long long i (n / pk) * pk 1; i n; i) { if (i % p ! 0) { res res * (i % pk) % pk; } } n / p; // 關(guān)鍵對(duì)應(yīng)遞歸中的 n/p } return res; }這個(gè)迭代版本模擬了遞歸過程每次循環(huán)處理當(dāng)前n的互質(zhì)部分和剩余部分然后將n更新為n/p直到n為 0。優(yōu)化3使用更快的質(zhì)因數(shù)分解對(duì)于巨大的 P可以使用 Pollard-Rho 算法進(jìn)行質(zhì)因數(shù)分解但這超出了模板題的一般范圍。P4720 的數(shù)據(jù)范圍下試除法足夠。5.3 一個(gè)優(yōu)化后的整合示例核心部分結(jié)合優(yōu)化combination_mod_prime_power函數(shù)可以這樣寫long long combination_mod_prime_power(long long n, long long m, long long p, long long pk) { if (m n) return 0; // 預(yù)處理循環(huán)節(jié)乘積 long long cycle_prod 1; for (long long i 1; i pk; i) { if (i % p ! 0) cycle_prod cycle_prod * i % pk; } auto factorial [](long long x) - long long { long long res 1; long long tx x; while (tx 0) { res res * qpow(cycle_prod, tx / pk, pk) % pk; for (long long i (tx / pk) * pk 1; i tx; i) { if (i % p ! 0) res res * (i % pk) % pk; } tx / p; } return res; }; long long e count_prime_factor(n, p) - count_prime_factor(m, p) - count_prime_factor(n - m, p); // 如果 e 已經(jīng)大于等于 k (即 pk 中 p 的冪次)可以提前返回0。 // 計(jì)算 k: 通過不斷除以 p 得到 long long temp_pk pk, k 0; while (temp_pk % p 0) { temp_pk / p; k; } if (e k) return 0; long long fn factorial(n); long long fm factorial(m); long long fnm factorial(n - m); long long num fn * inv(fm, pk) % pk * inv(fnm, pk) % pk; long long pe qpow(p, e, pk); return num * pe % pk; }6. 邊界條件與常見錯(cuò)誤排查即使理解了原理和代碼在實(shí)際編碼和調(diào)試中依然會(huì)遇到一些隱蔽的坑。6.1 數(shù)據(jù)范圍與溢出處理這是數(shù)論題最經(jīng)典的坑。題目中 n, m 可能高達(dá) 10^18P 在 10^6 以內(nèi)。qpow中的乘法溢出res * base或base * base可能超過long long范圍約 9e18。即使對(duì)mod取模在乘法運(yùn)算前就可能溢出了。必須使用快速乘龜速乘或__int128。// 使用 __int128 的快速冪推薦前提是編譯器支持 long long qpow(long long base, long long exp, long long mod) { __int128 res 1 % mod; __int128 b base % mod; while (exp) { if (exp 1) res (res * b) % mod; b (b * b) % mod; exp 1; } return (long long)res; } // 或者在無法使用 __int128 時(shí)使用快速乘 long long mul_mod(long long a, long long b, long long mod) { long long res 0; a % mod; b % mod; while (b) { if (b 1) res (res a) % mod; a (a a) % mod; b 1; } return res; }遞歸/迭代中的變量范圍在factorial_prime的循環(huán)for (long long i (n / pk) * pk 1; i n; i)中(n / pk) * pk的計(jì)算可能溢出。更安全的寫法是long long start (n / pk) * pk; if (start 0) start 0;或者直接利用取模性質(zhì)。6.2 特殊模數(shù)處理模數(shù) P 1根據(jù)定義任何數(shù)模 1 都為 0。在代碼開頭應(yīng)特判。質(zhì)數(shù)冪 pk 可能為 1在質(zhì)因數(shù)分解時(shí)如果 p^k 1這沒有意義。實(shí)際上當(dāng) P 分解時(shí)pk 至少為 p。但若 P1已特判。CRT 合并中的模數(shù)在增量法合并同余方程時(shí)新的模數(shù)是m1 / g * m2即lcm(m1, m2)。務(wù)必注意計(jì)算順序先除后乘避免中間結(jié)果溢出??梢允褂胈_int128輔助計(jì)算。6.3 調(diào)試技巧當(dāng)結(jié)果錯(cuò)誤時(shí)可以按以下步驟隔離問題測(cè)試小數(shù)據(jù)用小的 n, m 和小的合數(shù) P如 P6, 10進(jìn)行測(cè)試與暴力計(jì)算的結(jié)果對(duì)比。分離測(cè)試子函數(shù)測(cè)試count_prime_factor驗(yàn)證 n! 中因子 p 的個(gè)數(shù)計(jì)算是否正確。測(cè)試factorial_prime選擇小的 n, p, pk手動(dòng)計(jì)算驗(yàn)證。測(cè)試combination_mod_prime_power針對(duì)單個(gè)質(zhì)數(shù)冪模數(shù)測(cè)試。最后測(cè)試exLucas和 CRT 合并。驗(yàn)證質(zhì)因數(shù)分解確保對(duì) P 的分解是正確的。檢查逆元計(jì)算確保在求逆元時(shí)inv函數(shù)傳入的參數(shù)與模數(shù)互質(zhì)。在combination_mod_prime_power中求逆元前可以加斷言assert(gcd(fm, pk)1 gcd(fnm, pk)1)調(diào)試時(shí)。7. 擴(kuò)展盧卡斯的其他應(yīng)用與變體掌握了這個(gè)模板你不僅能解決 P4720還能處理一系列衍生問題。7.1 計(jì)算大組合數(shù)模任意數(shù)這是最直接的應(yīng)用。在一些計(jì)數(shù)問題中模數(shù)可能不是質(zhì)數(shù)比如998244353 * 1000000007這種擴(kuò)展盧卡斯是唯一通用的方法。7.2 處理模數(shù)較小但n,m巨大的情況即使模數(shù) P 是質(zhì)數(shù)如果 n 和 m 巨大遠(yuǎn)超 P盧卡斯定理可以將問題規(guī)??s小到 P 以內(nèi)。而如果 P 不是質(zhì)數(shù)擴(kuò)展盧卡斯是唯一選擇。它通過遞歸將 n! 分解巧妙地處理了 n 很大的情況。7.3 與多項(xiàng)式、生成函數(shù)結(jié)合在一些更復(fù)雜的組合恒等式證明或求和問題中需要處理模任意數(shù)的二項(xiàng)式系數(shù)。擴(kuò)展盧卡斯提供的C(n, m) mod P的能力可以作為子程序嵌入到更大的算法框架中。7.4 局限性擴(kuò)展盧卡斯定理的時(shí)間復(fù)雜度主要取決于模數(shù) P 的質(zhì)因數(shù)分解和每個(gè)質(zhì)數(shù)冪的大小。設(shè) P 分解為 ∏ pi^ki則時(shí)間復(fù)雜度約為 O(∑ (ki * pi log n))。當(dāng) P 包含大的質(zhì)數(shù)冪如 2^30時(shí)計(jì)算cycle_prod的循環(huán)會(huì)非常慢。在這種情況下算法可能不再適用需要尋找其他數(shù)學(xué)方法或題目給定的特殊約束。在我自己的使用經(jīng)驗(yàn)里擴(kuò)展盧卡斯是一個(gè)“知道原理就能寫但想寫對(duì)、寫快需要很多細(xì)節(jié)打磨”的算法。它不像快速冪或歐拉篩那樣有幾乎固定的短代碼它的實(shí)現(xiàn)長(zhǎng)度和細(xì)節(jié)處理恰恰體現(xiàn)了數(shù)論算法從理論到實(shí)踐的復(fù)雜性。理解F(n, p, pk)那個(gè)遞歸式是第一步而處理好循環(huán)節(jié)、溢出、CRT合并以及各種邊界條件才是能在比賽中穩(wěn)定拿分的關(guān)鍵。建議在理解的基礎(chǔ)上親手實(shí)現(xiàn)并通過 P4720 這道模板題進(jìn)行測(cè)試過程中遇到的每一個(gè)錯(cuò)誤都會(huì)讓你對(duì)模運(yùn)算和遞歸分解有更深的認(rèn)識(shí)。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91一区二区三区蜜桃| 夜夜爽夜夜爽| 日本性一区| 麻豆久久一区二区三区| 日韩操呦呦影院在线观看| 亚洲第一成人影院色播| 26uuu成人影片| 日本久久999| 日日夜夜干| 欧美精品亚洲精品日韩传电影| 97干在线视频| 日夜精品| 亚洲成人AB| 久久久网站| 日韩精品资源专区二区| 岛国天天午夜影院传媒网| 日本亚洲vr欧美不卡高清专区| 国产欧美精选激情视频| 91 丝袜在线播放| 东方亚洲在线操逼天堂| juliaann精品熟女一区| 啪啪啪东京| av在线人气| 亚洲av综合伊人久久| 久久精品人人做人人看| 久久久亚洲精品电影免费看| 天天干夜夜操网| WWW.操逼.COM| 久久专区| 亚洲高清视频在线免费观看| 鸥美中出| 婷婷五月天激情四射| 色色综合97| 99re9在线| 午夜福利成人免费视频| 亚洲精品成人激情在线| 97在线精品| 久久欲| 色偷综合| 曰韩香蕉97| 蜜桃视频精品一区二区三区| av优播| 99激情视频| 日骚逼视频| 日日碰视频网| 性欧美第一页| 日韩日韩日韩-国产乱码精品一区二区| 午夜欧美J进J出白浆流出久久久 | 乱操9999| 亚洲在线91| 伊人网青青| 一区二区影视| 亚洲人妻日日日| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 精品精品精品| 麻豆九九九| 麻豆天美制片厂网站视频| 91久久久久久久久久久| 蜜臀AV成人精品蜜臀AV久久| 99啪啪| 99久久网站| 亚洲综合中文字幕有码| 丁香五月影院| 日韩综合97P| 欧美黄页在线| 一级成人性爱| av天堂精品久久| 亚洲 自拍偷拍 欧美| 国产精品婬乱一级毛片彝族| 久久精品色欧美aⅴ一区二区| 手机在线视频国内精品| 强奸乱伦动态污图免费 | 久久久久久电影| 7777奇米影视久久| 国产午夜无码片在线观看影视 | 99RE在线视频精品,这里只有精品| 歐美一級亂黃99在綫精品| 天天操女人| 国产少妇高潮| 青青草五月份天| 91性感在线| 久久久久久久强迫| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 18禁久久| 97爱爱爱| 两性色网| 97天天综合网| 国产suv精品一区| 亚欧成人一级片在线播放| 波多野结衣AV无码一区| 9久热| 99精品久久久久久久婷婷蜜桃| 性吧在线视频| 呻吟 欧美 日本 中出| 久久夜色一区二区| 亚洲春色欧美| 国产91精品福利在线| 国产精品青草综合久久| 96久久久精品| 亚洲 无码 偷拍| 天天色综亚洲91污| 欧美在线大香蕉| 1024精品在线| 自慰白浆在线观看| 动漫av中文| 久久春色| 99无码视频| 嫩草伊人久久精品| 高清孕妇孕交 交| 91精品久久久| 天天综合91在线| 久久网亚洲| 日本在线观看网址| 国产女人高潮视频| 少妇高潮九九九九九九九| 一二三区操逼国产91| 欧美一级A片在线看视频性色| 欧美狠狠弄| 97Ai亚洲| 五月婷婷AV| 超碰精品人妻狠狠干| 久久在线观看免费视频| 日韩,欧美,中文在线| 啊啊啊在线观看免费视频| 亚洲天堂一二| 欧美性爱伊人| 亚洲国产亚洲天堂| 亚洲日韩国产欧美综合v| 中文字幕日韩精品一区二区三区| 人人性爱视频免费| 内射黑丝袜| 五月丁香六月综合缴清无码| 特级大荫道BBwBBwBBW| 久久久久久人| 麻豆久久久一区二区| 97视频免费在线| 国产精品女久久久久av爽| 久久熟妇五十路一区| 天天日天天干天天操| www.91色综合| 91社区伊人| 中文字幕老熟妇黄色视频| 蜜桃久久一区二区| 综合网,亚洲,欧美| PMv在线观看| 另类亚洲图色| 久久久久久国产无码精品| 欧美亚洲se91| 五月婷婷丁香六月| 91色综合| 超碰天天久久79| 欧美性爱无码一区二区三区| 久久视频,这里只有精品| 两性色网| 60秒不遮不挡| 免费成人在线熟妇网| 岛国黄| 欧美色图在线视频少妇| 五月天婷婷色| 成人性爱全视频观看| 亚洲第一页综合在线| 午夜男女爽爽爽在线视频 | 强奸乱伦AV一天堂网| 大香蕉伊人网WWWn0n| 成人AV超碰免费在线| 久草热制服丝袜在线观看| wwwcaobibi| 久久啊啊| 久久一二三四五六七八九区区| 亚洲蜜乳av| 国产第11页| 激情五月综合| 日韩三A大片在线观看 | 性一交一乱一交A片久久四色| 97超碰9| 欧美亚洲厕所精品偷拍91| 久久久久成人亚洲国产| 中日韓欧美高清| 老熟妇综合| 色九九综合| 人人操人人摸人人骑| 亚洲熟女乱综合一区二区三区| 久久久性少妇| 日韩人妻免费精品| 91丨人妻丨国产丨丝袜| 91天天美女| 青青草精玖玖69精品| 久久婷婷五月综合| 蜜臀AV一区二区三区激情综合| 亚洲 国产 精品一区| 97鸡把在线视频| 色好看av| 亚洲国产第一页综合视频| 无码操逼视频一下| 少妇熟女一区二区三区| 久久9999 | 中文字幕人妻资源在线| 97伊人| 国产丰满少妇久久久精品影院| www.zbzhongsen.com| 囯戸精品高潮呻吟旡码| 大象AV在线| 国产蜜臀精品一区二区尤物| 青青草国产亚洲精品久久| 伊人色综合网电影| 久久AV无码网址| 国产探花日韩援交| 91内射| 乱人乱色一区二区三区免费| 蜜桃臀一区二区aV| 欧美洲精品一级| 欧美91在线+|+欧美| 韩日精品四区| 男人的天堂2010| 国产乱伦亚洲| 亚洲欧美综合区自拍另类 | 日本午夜久久电影| 国产中文字幕曰本毛片| 人妻中文字幕精品无码| 精品毛片av一区二区| 三上悠亚在线毛片91| 久久超碰com| 亚洲女人91| www.91视频网| 四虎精品永久在线播放| 乱抡国产91| 国产成人超碰在线| 草草影院最新网址| 久久亚洲AV无码专区国产精品| 乱伦1色页| av天堂精品久久| 成人日韩3| 亚洲小电影免费涩涩成人在线高清 | 2024年最新色情网站在线观看| 在线97视频| 精品国产AV一区天美传媒| 中国熟妇| 亚洲天堂加勒比| 亚洲乱妇p22| 伊人骚琪琪亚洲天堂网站| 亚洲人妻色图| 欧美精品精品一区二区| 久久久久久日韩| 无码av永久免费专区网站| 操逼视频亚洲| 天美精品av| 国产人伦精品一区二区三区| 超碰欧美在线欧美| 无码人妻精品酒店| AA特级绝黄| 丁香六月婷婷| 极品粉嫩一区二区| 999国产精品999久久久久久| 欧州一区二区三区四区| 亚洲第一狼人丝袜美女另类| 亚洲色啪| 国产欧美日韩臀 | 亚洲精品毛片在线观看| 亚洲欲色9532548967一区| 69精品人人人人| 91爰爱欧美| 欧美综合传媒| 一级日本牲交大片好爽在线看| 亚洲精品一二区| 国产精品久久久三级无码| 日本超碰在线国产一区| 久久9免费视频| 性色AV蜜色av色欲av| 摸奶性爱视频网站在线免费播放| 日韩精品永久在线观看| 欧美九九爱| 日本免费一区二区不卡| 蜜臀一区二区三区在线| 日韩av乱伦| 日欧毛片久久| 人人操我人人干| 国模精品一区二区三区苹果色戒 | 成人色女网| 后入日本1234| 性爱乱伦网址| 免费看污网站| 水滴偷拍| 免费中文在线| 亚洲91网站| 精品视频一二三中文| 久久精品国产亚洲AV片多多| 影音综合网| 人妻黑丝袜电影| 精品人妻视频入口| 久久国产精品一级二级三级| 亚洲色图 91| 亚洲蜜乳av| 亚洲人在线| 综合网 欧美| 在免费jIzzjIzz在线视频| 96精品久久久久中文字幕| 久久香蕉国产线看观看亚洲女人 | 少妇一区二区三区| rivers-china.com| 欧美性爱1080p| 亚洲有薄码区日本系列中文字幕| 后入式福利| 欧美一二三级精品在线| 亚洲另类色图片| 天天做天天爱| 99r九九| 夜色综合| 顶级少妇BT天堂| 乱伦熟女论坛| 天天综合91在线| 91日韩网站| 国产美女高潮叫床视频| 超碰在线1234区| av在线免费一区二区| 欧洲与亚洲欧美精品中文字幕| 午夜国产综合视频在线观看| 高凊专区人人操| 久一区久久蜜桃| 激情综合五月| 中文字幕在线观| 精品一区96| 乱伦熟女专区| 97人人中文网| www.大香| 中文字幕在线第二页| 在线中文字幕极品av| 国产欧美日产一区二区三区 - 国产欧美日 | 欧美中文综合| 色婷婷aV一区二区三区麻豆综合| AV乱伦国产| 黄呦呦在线| 久久久久成人亚洲国产| 999国产精品999久久久久久| 五月婷婷丁香| 老外又粗又长一晚做五次| 亚码激情| 日韩av不卡在线观看| 欧美BT 亚洲色图| 伊人97超碰| 欧美性爱日韩高清| 91中出在线| 国产精品女同| 夜夜草天天| 性九九九九九九| 人人操人人大香蕉| 久久精品国产亚洲AV先锋| 啊啊啊啊啊操我视频| 欧美国产欧美在线观看| 欧州91高潮| 日韩精品电影| 婷婷丁香五月综合| 成人精品一区二区91毛片不卡| 精品二区三四区五电影 | 天堂8在线新版官网| 婷婷人妻激情| 大香蕉青青9| 激情五月天网站| 无码区蜜乳| 人妻夜爽夜夜爽| 五月婷婷大香蕉| 欧美在线永久天堂| 欧美中文综合| 日本ZZ高免费A级视频| 翘臀vidoes| 亚洲av影院在线观看| 欧美夜夜| 清纯唯美综合亚洲| 熟女AV一区| 欧美天天插| 在线观看亚洲专区| 免费A片三p视频| 亚洲情色 自拍| 日日干男人的天堂| 大香蕉AV丝袜| 九九热免费视频| 成人aⅴ一区二区三区| 97久久久| 天久久久噜噜噜久久国产精品爽爽| 九九九久久久久| 综合网欧美在线| 777奇米影视777四色| 少妇一级婬片免费放一级a性色.| 九九九免费视频| 国产97在线播放| 欧美日韩亚洲五月天婷婷| 日韩99神马视频播放片在线播放| 99热超碰| 涩涩五月天| 久久久久久久久久8888| 色综合av男人天堂| 人人射人人操人人摸| 青娱乐欧美激情一区二区 | 亚州操逼网| 91人妻做a观看视频| 精品亚洲一区在线观看| 成人性爱免费播放| 日本孕妇一区二区视频操逼免费看 | 中文字幕成人| 91中文在线| 欧美日韩第一页| 少妇滛荡视频| 亚洲欧美精品一区天堂久久| 国产精品久久久亚洲一区| 欧美男人一区| 夜夜操老骚逼视频网站| 日韩pv中文| 青青草在线视频人人想人人上 | 中文字幕88av在线| 久久久久久久久久久久黄色| 伊人久久大香线综合无码| 真实高潮91| 少妇毛片久久| 中文欧丝袜诱惑| 在线小说视频一区| 麻豆av一区二区| 亚洲熟女综合网| 91综合中文字幕| 手机看片91人妻| 亚洲h片在线免费观看| 成人a级高清视频在线观看| 人人贴人人摸| 亚洲欧美成人在线| 97硬碰| 人人妻人人色| 九九九九九九精品| 无遮挡又黄又刺激的视频| 国内精品a| 一区二区三区四区免费视频| AA丁香综合激情| 嗯啊啊啊轻点视频| 久久久久久裸体| 91n处女在线观看| av亚欧| 国产精品久久久久中文字幕| 欧美日韩国产在线| 天天色怡春院| 亚洲欧美高清| 精品一二三区久久AAA片| 日本大片日本一区二区免费高清 | 91免费看一区二区三区| 婷婷久久五月| 色偷偷色偷偷欧美日韩| 最新AV在线| 丁香九月 婷婷| 曰韩av中文字幕专区| 一牛影视久久久一区二区三区| 亚洲色香| 黄色视频高清无码网站| 色欲日韩欧美在线一区| 中文字幕少妇色| 乱人乱色一区二区三区免费| 久久久久久亚洲中文| 女人被添高潮免费视频| 麻豆福利视频导航| 91欧美www| 国产免费操逼| 国产精品熟女AV中文字幕在线播放| 天天看综合网| 色97国产69香蕉| 一个人免费视频观看在线WWW| 久久这里只精品99re66图| 欧美性区| 欧美色图片| 欧美成人性爱视频大全| 91美女视频在线免费观看| 97久久久| 天天91~综合入口| 9九九国产| 粉嫩粉嫩一区性色AV片| 欧美日韩国产电影| 高清在线不卡一区二区 视频| www.久久99| 日韩专区久久久| 久久综合国产精品国产| 75大香蕉| 亚洲图片91| 婷婷色中文字幕| 91精品少妇搡搡搡| 久久久无码av精| 欧美伦乱爱| 91亚州| 丁香激情网| 91精品国| 亚卅熟女乱色| 天天色综合影视网| 婷婷色在线| 日韩无码服务区| 免费一级毛片在线视频观看| 熟妇激情| 亚洲中文一区二区三区视频| 91青青在线视频| 伊人黄色视频免费观看| 欧美日韩人妻精品一区二区三区 | 日日插夜夜| 欧美大香蕉卡久久| 成人性爱免费播放| 综合av影片| 最新日产中文在线麻豆| 久久久免费高清中文视频| 精品一区二区成人动漫| 久久精品国产亚洲粉嫩| 麻豆天美国美国产| 岛国在线免费视频| 国产视频大全| 少妇3P性爱自拍| 熟妇一区,二区,三区。| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚洲欧洲中文日韩女优乱码| 97在线青| 亚洲黄色影视| 日韩一级性爱无码| 欧美高潮| 天综合中文| 人妻另类 专区 欧美 制服| 大香蕉一人在线| 另类 日韩 熟女| 国产馆| 国产精品视频播放| 精品久久人妻成人网| 99999国产精品| 夜夜国产一区| 色婷婷影视| 激情小说日韩无码| 精品人妻一区二区三区蜜桃视频| 天美传媒国产原创中文字幕亚洲欧美另类 | 欧洲站一级二级三级h| 亚洲第一综合| av天堂天堂av日韩| 日本精品999| 91操人| 亚洲欧美一区二区三区在钱蜜桃 | 五月激情视频| 秋霞一级A片黄色视频| 嗯嗯,好大,好爽,好骚| 一级性爱aaaa| 26uuu国产亚洲综合| 老鸭窝在线视频播放| 精品.99999| 色噜噜综合网| 国产高清精品福利| 久久久99免费| 韩国三级色呦呦| 亚洲极品| 天天操人人操骚逼网站| 99综合视频一体| 在线色导航| 中文字幕天堂在线| 97欧美综合| 青青青草原| 美女毛片999| 欧美亚综合色图| 亚洲综合色网| 久久久久久久人妻| 日韩性爱播放| 国产无码一二三区| 亚洲第一狼人丝袜美女另类| 亚洲密乳AV| 亚洲学生妹高清av| 色欲av国内精品久久久久久| 桑老女人九区| 成人夜夜| 女上位精品在线| 色妇91| 久久精品夜色国产亚洲AV| 花野真衣| 91neishe| 91超级碰碰| 探花精品视频| 免费综合亚洲中文| 日韩国产中文字幕| 97人人模人人爽人人| 天天日天天干天天整| 日本大香蕉| 婷婷五月天AV| 25国产精品免费观看| 国产久久一区二区三区野外在线| 中文字幕 国产 精品| 色色毛片| 亚洲乱色熟女一区| 亚洲精品久久久久毛片A片拉屎 | 夜夜青青无码影院| 精品九九九九九九九九九| AV99热18这里只有精品| 亚洲色图欧美色图制服诱惑| 亚欧洲一区二区视频| 免费精品AB| 超清中文乱码字幕| 高精欧美色| 国产v亚洲v日韩v欧美v片另类| 亚洲另类天堂| 色婷婷六月丁香七月婷婷| 老司机老司机午夜影院| 大香蕉五月天婷婷| 少妇500双飞99| 超碰97国产欧美| 岛国视频一二三区| 免费看日产一区二区三区| 熟妇人妻一区二区| 欧美九九九| 国产精品盗摄 偷窥盗摄| 综合久久欧美| 色娱乐色呦呦夜夜夜夜av| 张柏芝国产一区在线观看| 精品视频免费在线一区| 大香蕉十区| 97爱| 久久亚洲av成人无码国产| 中文字幕文字幕无码一区二区三区电影99| 日韩欧美加勒比| 五月天婷婷成人网| 91蜜桃传媒精品久久久一区二区| 东北丰满熟女国产一区| 神马久久中文字幕| 欧美午夜视频免费观看| 日韩成人色图| 99少妇| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 簧片免费看视频| daxiangjiao你懂的| 国产女人操逼视频| 91少妇香蕉久久精品| 亚洲精品久久久久毛片A片拉屎| 久久伊人大香蕉| 日夜伊人网| 真实高潮91| 欧美福利视频啊啊啊啊 | 天色综合网| 久久国产AⅤ| 久久偷偷色综合蜜桃| 大香蕉久操| 九月伊人中文字幕| av东京热男人的天堂| 亚洲少妇中文字幕网址| 嗯嗯啊啊啊好爽| 青青草亚洲一区| a片在线播放| 久草老司机| 精彩视频日韩| 欧美麻豆成人同性GⅤ在线| 亚洲欧美洲综合| 麻豆AV短剧| 国产日比| 国产欧美精选激情视频| 99re在线视频国产| 久久婷婷六月综合| 欧美日韩国产三级黄色| 亚洲色图A| 嫩草91| 大香伊人在线一区| 日本网色| 高跟丝袜AV专区国产| 国产福利合集| 蜜臀Av一区二区三区| 国产日韩人人| 91九九九逼| 后入美女国产| 91Chinese在线| 亚洲高清无码在线桃色| 另类小说综合网| 边做饭边操逼逼| 超碰97丝袜| 蜜臀99久久国产| 97超碰伊人| 青青草玖玖爱| 蜜臀无码一区二区| 国产风韵犹存熟妇三区| 欧美大片一区二区三区| 一区二区三区 丝袜高跟| 夜夜嗷嗷一区二区| 在线97在线| 97久久精品亚洲中六字幕| 嗯啊啊啊轻点视频 | 啊啊啊好舒服视频| 欧美色图91| 殴美性天天| 777超碰| 99超碰碰| 丝袜美腿亚洲| 黄色免费网| 天天躁日日躁成人字幕aⅴ| 丰满岳乱妇一区二区三区| 日韩精品人妻一| 五月天黄色激情视频| 偷窥自拍A片| 色九月综合| 九九九只有精品| 久久大黄片| 综合影视国产无码| 日韩亚洲美女一区久久| 色综合久久夜色精品国产天堂| 干美女人妻| 白丝被操91| 久久性爱免费送| 久久久99久9| 漂亮人妻被强中文字幕hd| 大香蕉综合网| 日本一区二区不卡精品| 99999精品成人| 97ai亚洲| 国产精品蜜乳AV| 伊人五月天青青草婷婷| 人妻91少妇| 亚洲av无线观看| 欧美午夜色妇色鬼| 午夜αv| 五月激情综合网| 国产九九九九九九| 中文字幕中文字幕一区二区| 久久精品天美| 蜜臀99久久国产| 操逼天美3区| 97香蕉人人乳| 丁香九月婷婷| 美女尤物福利视频| 26uuu国产亚洲综合| 国产第25页在线观看| 欧美大片天天看| 九九探花视频在线观看| 碰人碰碰人人开房人肉| 综合自拍| 欧美亚洲丝袜人妻制服中文99| 97啪啪| 色九久| 国产精品一区二区三区在线密挑| 91碰碰| 十八禁啪啦拍视频无遮挡| 欧美色九九| 欧美激情综合色综合啪啪五月| aa片毛片| 伊人国产视频| 黄片直播三级黄片两女一男| 亚洲天堂资源| 一起草av| 欧美日韩国产三级黄色| 长久操视频| 97人人射| 影音先锋日本一区二区| 国产精品3| 操人妻少妇中文 | 国产精品另类一区大香蕉| 五月天激情网图片| 亚洲色欧美| 北京美女一区二区| 欧美性爱伊人| 亚洲影院无码在线| 美女爽爽爽刺痛洞洞| 亚洲男人的天堂一区二区| 日韩Va亚洲va欧美Ⅴa久久| 日韩精品资源| 97在线观看免费视频l| 成 人 影视 一区 二区 三区 四区| 日韩欧美大力操| 久久 精品| 91性网| 精品久操| 99re在线精品78| 伊蕉97蜜桃97狠狠综合干| 2018色综合天天操| 欧美亚洲日本视频久久久| 久久国产在线一区二区| 色天使AV天堂| 亚洲色情在线影视| 麻豆 亚洲 97| 久久久久9999妇女| 婷婷亚洲综合| 7777欧美成是人在线观看| 午夜激情成人在线观看| 91av熟女人妻| 青娱乐福利99| 国产91福利小视频在线观看| 青娱乐休闲视频在线观看| 国产传媒日韩| 性爱免费视频成人| 懂色av色欲av蜜臀av| 激情熟女12P| juliaann丝袜| 神马麻豆福利院| 午夜福利一区二区三区四区五区色婷婷| 日本大香蕉| 精久久久| 91亚州| 亚洲精美粉嫩嫩泬在线观看| 亚洲av淫乱| 男人的天堂啪啪啪啪啪蜜桃不卡| 天美AV片| 97日视频| 丰满人妻一区二区三区免费| 久久久久久十| 草莓精品视频在线免费观看| 人人摸人人添人人操| 99精品在线| 亚洲国成人情色好看电影| 激情四射婷婷六月天| 女人久久久| 99国产在线 精品 视频| 成人婷婷丁香| 99re综合伊人| 韩日色费| 一区二区三区四区色图| 成人精品欧洲亚洲| 人妻铁牛TV| 欧美黄片欧美黄片xxx| 欧美亚洲激情小说| 色臀AV| 亚洲 欧美 手机在线观看| 嗯~啊~快点 死我视频| 欧美综合色图片| 成人a大片在线观看| 美女露胸露屁股| 久久久三区二区一区| 亚洲熟女乱色一区二区三区| 成人午夜无码视频| 亚洲视频二区 | 自拍偷拍2025在线观看| 精品四五区| 成人在线日韩| 欧美人妻少妇| 欧美性第1页| 午夜精品久久999热蜜桃介男人用| 天天做天天爱| 日本肏逼视频在线观看| 国产免a费看黄片在线| 无遮挡又黄又刺激的视频| 国产区在线| 欧美顶级黄色大片免费| 另类图片五月天| 亚洲国产一区二区入口| 青青草国产盗摄一二三区| 久久艹逼视频| 国产精品伦理| 人人污日韩一区二区| 人人操人人叉人人插人人| 亚洲国产综合图区中文字幕| 超碰97在线 欧美 国产| 日本操逼视频导航| 国产黄色剧情影片麻豆免费播放| 91成人社区| 啊啊啊啊视频免费| 五月婷婷六月激情| 91社操逼| 91一区二区三区蜜桃| 欧美亚洲色的图| 一区二区视频你懂的| 东京太热久久久| 最新欧洲欧美日本激情网站| 国产野战露脸在线播放| 精品视频在线观看| 97精品免费视频网站| 亚洲91射| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 国产精品视频一区二区三区八戒| 97香蕉网| 97爱| 国产午夜精品理论片a大结局| 亚洲国产天堂| 麻豆美女丝袜人妻中文| 男人午夜天堂| 精品国产Av无码久久久亚洲| 啊啊啊操死我| 日韩欧美性吧婷婷乱伦大香蕉| 亚洲 欧美 色图| 无码高清操逼| 日逼逼免费看| 日韩少妇一区二区三区| av在线资源| ,国产乱人伦精品一区二区三区| 久久欧美1卡2卡3| 欧美性,亚州色| 1204金沙人妻懂旧版免费| 91国产美女丝袜足交精品视频 | 欧美亚洲首页| 国产无码精品久久久久久| 亚洲伊人a线观看视频| 亚洲激情综合另类男同| 欧美日本国产日韩激情视频| 六月色色| 国产婷婷一区| av天堂加勒比| 国产成人拍国产亚洲精品| 精品国产乱码久久久久久口爆网站 | 97天天综合网| 操一对老熟妇爽上天视频| 欧美操人视频| 九九久久精品| 好舒服视频| 日日超碰亚洲| 99热伊人| 日日干夜夜欢| 飘花国产午夜精品不卡| 色香色欲天天综合网天天来吧| 欧美少妇熟女| 人妻少妇精品无码专区二区密桃| 欧差乱伦二三| 日韩在线视频1234| 秘书高跟黑色丝袜国产91在线| 久久黄片国产一区二区| 色婷婷亚洲婷婷| 丝袜加勒比| 最新的亚洲无吗| 69久久久久久久久久久久久| 激情综合网激情综合| h在线看免费版在线看| 射丝袜大香蕉| 国产欧美日韩一区二区三区| 女一区二区| 99婷婷一区二区| 天美一二三在线观看Av| 91视频精品| 久久、1234| 亚洲精品尤物yw在线影院| 中美日韩毛片| 亚洲色欲天天天堂色欲网女| 久久蜜色情在线视频xxx免费观看| 91丝袜在线观看| 东北女人被操| 欧美aaaaaaa| 国语精品av| 超91综合网| 欧 美 自 拍 偷 拍| 长久操视频| 人妻加勒比东京热| 欧美 精品国产制服第一页 | 欧美日韩国产高清在线一二三区| 日日夜夜模| 大香蕉伊人色偷偷在线| 亚洲欧美国产中文视频| 精品二999| 青草一区二区| 精品少妇一区二区| A级国产欧美激情在线| 九九色热| 欧美在线播放aaaa| 午夜福利免费精品视频| 奇米狠999| 强奸乱伦中文字幕AV| 亚洲精品无码久久AV| 国产欧美精选自拍一区| 久久五十路熟女人妻| 国产日韩区| 久久一区二区高清免费| 国产成年免费大片黄在线观看| 成人性爱av| 久久国产乱子伦精品免费女人| 狠狠操,使劲操| 成人精品久久久午夜福利| 中文AV制服乱伦| 男女猛烈无遮掩视频免费软件| 伊人网免费视频| 欧美日韩黄片精品在线| 国产一级不卡在线观看| 肉嘟嘟www视频在线观看高清| 欧洲一级性爱视频在线观看| 99久久婷婷| 天堂九九九九九九九九九| 精品国产自在在线99| 99re9这里只有精品| 97bbn| 久久华人网| 激情一区二区| 激情五月综合开心五月| 欧美性爱中文字幕无线码| 久久精视频美日韩在线视频| 人人爱操| 精品国产一区二区三区久久久蜜臀| A啊啊在线观看| 亚洲男人天堂视频 | 国产乱人伦AVA麻豆软件.| 亚洲欧美日韩综合在线尤物| 亚洲高潮少妇| 欧美视频第二页| 少妇高潮喷水无套久久久久久| 97在线公开视频| 91精品国产91久久福利| 国产精品蜜乳AV| 亚洲图片欧美91N| 久久一本大香蕉| 九九九久久久W精品| 小说区 图片区色 综合区| 中日韩久久久| 亚洲日本韩国极品一区二区| 久久爱超碰网| 91成人无码| 亚洲一区二区三区中文字幕| www.久久| 99精品人人爽| 不卡日本一区二区| 家庭乱伦网站国产| 国产欧美美女免费观看视频| 久日综合网| 欧美不卡五十路| 中国探花熟女| 日本不卡二三区| 国产精品久久蜜乳av| 欧美日日操| 国模限制级电影| 日韩国产九九精品一区二区三区毛片| 91美女小视频| 人妻中文字幕日韩电影| 丰满少妇一区二区三区四区观看| 999 久久久| 亚洲伊人成综合成人网| 国产福利影视| 欧美中字二区| 91色拍| 噜噜噜无码AV一级一级久久影院| 久偷拍| 超碰91在线| 久久婷色| 伊人久久亚洲色欲综合网站| 人妻精品免费一二三区| 日本色婷婷| 97色欧洲| 女同性恋久久| 综合91网| 国产成人99久久亚洲综合| 国产久久一区二区午夜| 91中文字幕在线观看| 午夜啪啪片| 十八禁黄色成人网站观看| 97爱| 国产精品青青草| 超碰诱惑| www.婷婷| 一二三区精品视频| 女人爽到高潮潮喷18禁网站| 无毛精品| 九九干| 9999九九九久久久| 欧美综合娱乐久久| 欲射影视| 天堂俺去俺来也www久久婷婷| 欧美在线伊人色| 成人久久久| 91在线美女| 国产精品人妻免费精品| 欧美色偷拍| 天天综合网日韩| 青青草自拍视频在线播放| 天天伊人| 99中出在线| 高清国产无码av| www.高清无码诱惑一区.com| 综合伊人激情| 国模不卡一本二本三电影| 日韩免费三级黄片电影| 91黑丝美女| 免费在线观看国内色片网站网址| 亚洲美女30b| 久久久精品91八戒| 日韩无码久久熟女一级片| 精品国产丝袜一区二区三区乱码| 动漫av中文| 99热在线观看| 欧美日韩久久精品爱爱| 艳美熟妇先锋一二三区| 色色毛片| 亚洲精品1区| 欧美一级A片在线看视频性色| 又黄又硬又粗又长国产视频| 2020中文字幕| 人人看人人插| 国产情色在线| www.狠狠| 欧美真人抽搐一进一出gif| 欧洲一区二区三区免费| 国产尤物AV尤物在线观看不卡| 青青青草原| 久久婷婷色综合一区二区三区| 日本高清免费一本视频在线观看| 亚洲97p| 另类在线| 精品高清av中文字幕| asc国产精品| 人人爽天天爽| 亚洲系列第一页| 亚洲情色 欧美| 亚洲精品欧洲精品| 日本三级R| 新亚洲无码| 欧美日韩97在线| 国产黄a三级三级三级av在线看| 麻豆视频国产一区二区| 中文字幕伊人| 精品久久一区二区三区四区五区| 亚洲欧洲av影音| 91在线国产后入风骚翘臀美女素人| 人妻熟女午夜精品在线| 久久首页| 精品国产乱码久久久A| 欧美中文狠| 色色99| 一区二区三区免费岛国片| 久久一二三四| 曰本道人妻久久久在线不卡色视频| 青青草原狼av| 日本亚洲熟女视频| 国产精品蜜臀久久久久无码AV| 成人一二三区| 九九九九免费高| 麻豆 欧美 日韩| 国产精品99久久久www| 在线亚洲 欧美 日本专区 | 亚洲男人的天堂亚洲| 伊人久久综合精品欧美| 亚洲欧洲激情卡通另类文学四射小说网站| 99色骚| 夜夜高潮夜夜爽高清视频一| 五月天色色网站| 亚洲日韩美女中文字幕乱| 国产精品久久久吖| 亚洲骚逼少妇| 职场同事知名国产国产精品久久欧美日韩 | 亚洲精品819| 激情综合亚洲| 成人免费福利网站国产| 国产高清吃奶免费视频网站| 欧美激情专区| 老熟乱一区二区三区四区| 99爱爱| 大香蕉欧美国产日韩高潮| 国产人伦精品一区二区三区| 大香蕉123| 中字乱伦AV| 国产 v乱码一区二| 国产精品极品美女视频| 日韩精品色呦呦| 中文AV制服乱伦| 超碰欧美| 测评在线观看AV| 久久久久久九九九| 深夜国产福利| 人妻丝袜一区二区三区在线| 欧美色图99| 日1区2区3区2020| 骚妻少妇精品性色无码四色A V| 成人在线午夜视频一区| 国产成人主播| 超碰这里只有精品| 伊人精品视频| 欧美色图成人网一区二区 | 强奸乱伦AV网址| 美国日韩黄片| 国产美女高潮视频| 欧美一区二区三区另类精品| 国产高清午夜成人在线观看| 91视频综合网| 97综合网| 插入逼91| 最近2018中文字幕在线高清第一页| 日韩三级伊人| 日韩成人无码| 性暴力欧美猛交在线直播| 色屁屁影院www国产| 欧美A片中文字幕| 2017人人操,人人摸| 日韩亚洲精品一区二区| 日本丝袜人妻内射| 在线v中文字幕一区二区三区| 国模吧 一区二区三区| 五月婷婷影院|