日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

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
返回資訊列表
国产夜夜艹| 亚洲自拍欧美色综合| 人妻无一区二区三区| 亚洲精品1区| 国产毛片精品一区二区色欲黄A片| 国内伊人久久久久久网站视频| 绑缚麻绳人妻寝取完整版| 国产午夜精品理论片a大结局| 国产成人亚洲精品无码古代早漏男| 亚洲青青草| 情侣开房子拍 日韩无码 女的很漂亮| 九九热在线视频| 在线观看不卡一区二区三区| 无码一区二区精品视频久久久春药| 夜夜嗨免费视频| 大逼色网站| 天天天天天超碰| 69AV女优男人的天堂| 欧美性爱视频免费一区一A | 亚洲在线网站| 欧美天天弄| 亚洲天堂日本| 大香蕉一人在线| 五月天丁香| 国产成人自拍视频在线| 激情综合网五月婷婷| 天天透伊人| 91n欧美| 少妇高潮99p| 成人无遮挡毛片免费看| 玖玖爱在线视频免费观看| 嗯嗯不要视频| 久久高潮妇女视频| 91欧美在线| 男人的天堂久久久| 国产乱伦视频污| 碰碰97| 后入式免费视频| 91精品婷婷国产综合久久| 天美传媒Av在线| 97av,com| 久久久96| 91影库| 小日子操bb在线看| 日韩欧美午夜一区二区| 免费一级欧美片片线观看| 久久久精品视频免费观看| 亚洲图片婷婷五月天| 日韩激情啪啪啪| 777AV电影| 亚洲精品人妻在线| 国产福利小视频高清在线观看| 美国黄片aaa| 操操逼视频| 蜜乳Av成人片网站| 日本亚洲熟女视频| 人妻精品综合中文字幕在线| 秋霞男人网| 男人的天堂欧美| 亚洲熟女乱综合一区二区三区| 精品国产99| 91爰爱欧美| 一区二区三区无卡视频在线观看| 97精品中文字幕| 电家庭影院午夜69久久夜色精品国产69乱 | 激情综合久久| xxx亚洲午夜天堂| 日韩欧美水蜜桃人妻| 深夜激情| 超碰97人人cao| 亚洲欧美在线观看免费| 亚洲人成色9999精品久久| 久久国产视频专区一二三| 久偷拍| 超碰视97中文| 家庭乱伦麻豆| 大色综合网| 日韩美脚一区二区网站| 日本性一区| 久久色精品视频在线| 欧美成人A√在线一区二区| 特级毛片特黄久久免费看| 久久9 9 9精品| 国产十八禁视频| 91麻豆天美国产欧美高潮| 91人人| 亚洲暴力强奸AV| 色99色| 欧美大战久久久伊人| 男人的天堂Va| 东京热免费视频| 青青草在线视频欧美| 亚洲综合色图欧美| 亚洲成熟国产精品美女| 国产欧美日韩臀| 精品国产乱子伦一区二区三区,精品一| 日韩肏逼视频| 欧美日韩国第一区| 果冻传媒A片麻豆熟妇人妻| 欧美一二三级精品在线| 久久久久久久久久久久久久久性生活视频 | 欧美爱国产综合、| 巨爆乳肉感一区二区三区竹菊影视 | 久久婷婷亚洲欧| 高潮精品| 啊…啊…操我用力操我| 欧美综合自拍亚洲综合图| 人妻色偷色噜| 最新加勒比丝袜在线| 男人的天堂久久狠| 啪啪啪东京| 一区二区久久天天干狠狠| 精品在线78| 国产精品久久久久久片| 亚洲图片 激情小说| 啊啊啊好多水| 91视频国品一二三区| 美女好片色日本| 金莲网址| 啊啊啊啊啊啊啊啊要喷了| 日本久久女同性恋视频| 第45页一区二区| 精品一级毛片在线观看| 日本东京热大香蕉a片| 是还免费视频1727我| 国产成人91一区二区三区| 亚洲一区深夜| 欧美18 在线观看| 欧美综合色站| 芊芊操逼视频无码| 久久精品中文字幕女同| 国产美女高潮叫床视频| 亚洲人妻色图| 国产av高清版| 精品久久人妻成人网| 啊啊啊啊好疼视频| 日本99久久| 91综合网在线| 色偷偷色偷偷欧美日韩| 不卡啪啪视频| 操啊国产| 日本色色色网站免费看不卡| 亚洲综合射| 青青伊人这里只有精品| 精品少妇一区二区| 亚洲国产欧美日韩人妻日中文| 久9精品| 亚洲熟妇丝袜在线观看| 日本黄色大片一级视频免费麻豆| 精彩久久中文| 超碰久久性爱| 国产伦乱91| 97在线免费看视频| A啊啊在线观看| 强奸乱伦亚洲第一页| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 日韩特级毛片免费观看全集| 日韩情色AV| 日本欧美一区二区三区免费| 1024精品在线| 色九九综合AV| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 亚洲综合113页| 2019久久久久久久久福利| 熟女高潮精品一区二区| 嗯嗯,好大,好爽,好骚| 日韩午夜精品一区二区三区电影| 干B网| 久久国产视频专区一二三| 俺去俺来也在线www| 免费亚洲黄色视频在线观看| 欧美翘臀视频网站一区二区三区| 国产亚洲精品美女久久久m| 操逼操逼操| 极品五月天噜噜| 久久久久久久强迫| 欧美日韩在线小说| 中文久久96| 欧美黑人猛交春色影视大全| 91c色| 五月天伊人网| 青青草好吊| 偷窥自拍亚洲色图| 久久久激情| 脫衣舞一区二区三区| 狠狠爱大香蕉| 啊啊啊好大好深| 丝袜狂射91| 亚洲 欧美 小说| 九九天堂| 亚洲精品丝袜-不卡成人免费……| 青娱乐亚洲自拍| 日韩三级伊人| 国产日韩无码一区二区三区久久区| 欧美黑人168页欧美黑人167| 久欲AV| 亚洲污一污二| 蜜桃臀一区二区aV| 亚洲日韩久久精品一区| 91N综合在线| 欧美高清性猛交| 殴美,日韩国产伦精品| 人人爱人人操人人性| 最新av中文字幕高清| 天天92av| 99热在线观看| 亚洲中字幕日本一区二区三区| 四虎影视欧美| 啊啊啊啊好爽好舒服一区二区易域| 欧美日本视频一区| www男人天堂| 精品免费囯产一区二区三区| 五月天婷婷社区| 久久久久国色αv免费观看| 欧美日韩亚洲少妇寂寞影院正在播放 | 国产日韩欧美亚洲精品95| 中文字幕美女91| 成·人免费午夜在线观看| 精品九九| 情趣丝袜无码操逼视频| 天天躁日日躁AAAAXXXX国产 | 国产成人主播| 日韩电影免费网站麻豆视频| 国产黄a三级三级三级av在线看| 伊人97超碰| 91色情黑丝搞鸡在线观看一区二区三区三州| 国产版a级片直播在线| 色综合尤物| 国产吞精a级片激情电影| 日本肏逼视频在线观看| 五月丁香| 91色亚洲| 探花精品 一区二区| 亚洲色图欧美色图另类图片| 3P乱轮视频| 国产操逼网站亚洲一级黄色| 美国日韩黄片| 久操热线| 亚洲天堂综合AV| 高清不卡国产| 亚洲天堂日本| 超碰视97中文| 试看60秒 爽| 国产女人和拘做爰视频 | 黄片免费久久久久久久| 久久国内| 天天欧美色| 天天α片| 一区二区影视| 家庭乱伦麻豆| 久久九九国产精品| 中 文字幕一区二区三四 五 区日 日 骚 | 狠狠躁日日躁夜夜躁A| 一区二区三区蜜桃成人撸久久东京热 | 久久精品老司| 激情另类激情| 国产传媒午夜理伦精品| 超碰人人超在线观看| 大香蕉AV丝袜| 天天在线91| 强奸乱伦AV一天堂网| 99精品欧美一区二区三区桃色| 日韩性爱高清免费视频| 熟女露脸激情自拍视频| 青青青操| 欧美日韩小说| 国产成年精品高清在线观看91| 美国aaaaa一级黄片| 人妻嗯啊啊在线播放| 亚洲综合草草| 日本在线观看网址| 很很干很很操| 日韩干B| 为用户提供免费看黄网址在线观看| 欧美一区二区观看在线| 9超碰免费| 97亚洲色图| 中国一级特黄大片护士| 亚洲最大的黄色电影网站。 | 日本二三四区| 午夜120视频在线观看| 亚洲AV永久无码精品成人调教| 99热在线播放| 青青操青娱乐| 大香蕉线| 免费黄色视频网址| 97国产精品在线观看| 国产91会所女技师在线观看| 中文字幕五区| 69一区二区| 久久精彩视频| 日韩精品-原创伙伴| www.色操逼| 加勒比伊人综合| 性爱乱伦视频免费| 91爰爱欧美| 草草影院日本第一页| 黄呦呦在线| 青娱乐淫乱1314| 国产亚洲一黄| 久久精品久| 亚洲丝袜色| 夜夜夜爽www精品视频| 蜜臀操逼黄色视频操的好爽| 天天综合站| 天天做日日爱夜夜爽| 久久精品视频一区三区小泽玛利亚| 久久成年片色大黄全免费网站| 99re9在线| 欧美色狠| 日日骚 av| 久久男人精品| 噜噜噜亚洲精| 国产乱伦视频污| 日韩三级久久久| 久久99国产精品| 婷婷五月天福利| 夜夜爽夜夜高潮夜夜爽| 日韩女优中文字幕| 天天插夜夜操| 男人的天堂久久| 天天综合网国产| 丰满人妻被猛烈进入中| 中文字幕女同在线| 九九无码| 黑人白女精品一区| 三四中文字幕| 国产精品国产自产拍高清AV| 国产一级做a爰大片免费久久| 竹菊一区二区三区AV线| 偷拍亚洲高清图片| 色久桃花影院在线观看| 欧美综合自拍亚洲综合图| 91狠婷| 看免费一级在线播放毛片| 欧美亚洲日韩16色| 亚洲av夫妻操穴网| 草草影院最新网址| 漂亮人妻被强中文字幕hd| 日韩性爱电影一区| 狠狠狠狠狠狠| 国产 日韩 欧美高清 | 91天堂丝袜美腿| 激情五月天网站| 影音先锋乱伦资源| 黄色工厂这里只有精品| 久久精9| 99色婷婷| 巨爆乳一区二区爆乳区| 久久国产乱子伦精品免费女,网站| 东北黄色电影| 亚洲.欧美.丝袜.中文.综合| 欧美成人一级免费电影| 亚洲天堂欧美| 97超碰色情| 97色妞| 岛国AV一区二区电影| 九九干| 日韩电影在线观看网址| 国产精品。| 去干网最新版| 亚洲福利中文字幕在线| www.91逼逼.com| 97久久网| 青青操在线视频| 狠狠2050在线观看| 黄色高清久久无码依人| 女人的久久久| 婷色五月| 天天色综合天天操| 全球成人中文在线| 一区二区三区黄色片a| 国产精品午夜AV完会免费| 久久久久人| 试看福利| 亚洲黄a三级三级三级看三级| 六月婷婷综合| 亚洲天堂区| 色欲日韩欧美在线一区| 免费A V在线播放| 摸奶性爱视频网站在线免费播放| 国产无码久久高清| 熟女乱3伦999| 免费精品国偷自产在线在线| 国产v片在线免费观看| 99re超碰| 亚洲国产一级黄色视频| 大学生美女口爆| 久久久97| a级免费在线观看| 94色色电影网| 人妻一区二区三区四区视频| 天天上日日上日韩精品| 亚洲男人综合| 岛国片在线播放| 岛国1区2区3区在线观看| 国产精品不卡av免费在线观看| 亚洲深夜福利| 亚洲中字幕日本一区二区三区| 亚洲最大成人a毛毛片| 久久精品一区二区三区蜜桃臀| 中文幕97| 桃色人妻在线视频| 久区视频| 亚洲情欲| 太久视频| 久久久97| 欧美少妇第一页| 夜精品久无码| 强奸熟女一区二区三区| 亚洲97精品| 97超碰久久| 岛国黄片网站| 欧美色视频在线| 97任你吞精| 天天看综合网| 国产视频第2页| 欧日韩一二三f区| 亚洲图片欧美偷拍| αⅴ天堂| 97香焦色区| 中文字幕久久精视频久久大全| 亚洲少妇激情一区二区三区| 欧美天堂在线| 欧美91视频| 久久精品国产亚洲AV高级北京| 99免费在线视频| 亚洲精品欧洲精品| 伊人嫩草| 天天操人人操狠狠插| 久久亚洲AV成人精品无码| 99精品无码| 亚洲AV小说| 超碰538| 加勒比综合88| 欧美色图亚洲激情| A V视频日本| 国产极品99热在线播放69| 中文字幕精品一区二区精品| 黄久在线| 日韩在线欧美精品一区二区| 五月综合久久| 97视频900| 亚洲学生妹高清av| 久久人妻丝袜一区二区三| 久插综合| 欧美片第一页| 嗯啊不要在线观看嗯啊| 麻豆一区二区三区在线看| av无线看| 亚洲国产精品久久久久婷婷青年| 亚洲少妇自拍中文字幕懂色| 久久久国产av美女私房| 亚洲欧洲偷拍一区| 精品人妻一区二区免费蜜桃视频| 激情综合二| 成人日本精品九区| 超碰成人人人爽人人爽| 蜜臀久久99精品久久久老,,| www.欧精品| 美女大乳久久久久久久女人18| AV天黑人| 国产亚州高清国产拍精| 国产 码在线成人网站| 在线观看A啊啊啊| 亚洲无码com| 成人精品久久久午夜福利| 97啪啪| 五月丁香社区婷婷日韩欧美精品影院 | 天堂精品一区| 国产精品自拍xxxx| 国产精品久久久999| 九九九久久久| 91偷拍欧美亚洲| 操啊国产| 综合 青草 伊久久 影院 综合| 精品九九| 久久久影院| 欧美在线91| 97欧美精品综合| 天天综合网网欲色| 色第一页| 都市久久精品激情亚洲| 中文字幕人乱码中文字的预防方法| 久操网无码在线| 欧美色图成人网一区二区 | 午夜男人一级A片7777| 中文字幕乱亚洲美女精品一区| 青娱乐欧美激情一区二区| 天天欧美色| 男人天堂资源| 国产超碰在线一区| 一起草欧美| 九草九九九| 亚洲无线码一区国产欧美国| 国产蜜臀精品一区二区尤物| 最新AVzaixian| 欧美一区二区男人天堂| 亚洲爱爱视频一区二区| 欧美一区二区观看在线| 少好三P| 亚洲激情网一二三四区| 日本一级特级毛片视频| 欧美 亚洲 综合 制服 另类| 国产精品久久久鸭无码的功能| 夜夜欢天天干| 精品国产72| 黄在线| 日韩一级二级三级| 日日干夜夜操视频h| www.伪伪| 九九九九九精品| 按摩中文字幕| 1024人妻熟女一区二区三区| juliaann欧美丝袜办公室| 青青草日逼视频| 97欧美性爱| 亚洲丨在线| 美骚妇av高清在线| 国产精品成人无码av| 精品免费视频国产一区| 久久久91福利姬| 大香蕉97久久| 激情专区综合| 91麻豆天美国产欧美高潮| 嗯嗯嗯嗯啊啊啊好紧好大| 国产11页| 97综合久第一页| 天天操狠狠日夜夜干超碰撸com视频在线观看 | 亚洲国产中文字幕| 国产精品色| 成全在线观看免费观看| 欧美日韩中文字幕人妻| 天天色怡春院| 啊啊啊好湿久久| 日韩精品碰碰| 人人操人人色网| 国产深喉| 97超碰中文| 99国产精品久久久久久久成人热| 五月婷婷激情| 伦理片秋霞免费影院| AV在线性爱| 97资源久久| 国内毛片四区| 99这里只有精品| 亚洲大色堂| 中文字幕一二三区| 久久久影院| 五月丁香综合网| 国产精品久久伊人| 嗯啊抽插大香蕉网页| 亚洲无码国产精品久久| 色哟哟AⅤ| 日韩视频中文字幕| 精品国产三级av韩国在线| 91岛国动作片| 久草热制服丝袜在线观看 | 91模特在线观看| 后入福利视频| 亚洲综合一| 性色国产东北露脸精品视频| 日韩探花精品在线视频| 欧美伦乱爱| 2017天天操天天日| 免费无码婬片AAAA片直播色戒| 美女被艹尤物视频| 欧日韩一二三f区| 欧美后入式| 激情人妻另类| 男女香蕉一区二区| 综合激情一一91| 天天天堂影视日韩亚洲91| 久久精品中文字幕女同| 国产欧美后入| 免费男人的天堂| 加勒比99999| 九九九成人| 精品天堂| 中文?日韩?免费?精品| 欧美不卡五十路| 亚洲色系另类精品国产| 日韩亚洲中文有码视频| 亚洲乱码国产乱码精网站| 18禁超污无遮挡无码免费网| 免费综合亚洲中文| 欧美久久九九| 亚洲码和欧洲精品激情系列| 久久夜精品一区二区三区| 亚洲第一男人天堂| 大香久久| 精品久久久久久无码| 永久免费发布性爱网| 欧美日本一区二区a人| www.色综合| 亚洲天堂,男人| 大香蕉 222| 久久久久久久综合,国产| 99热线麻豆| 欧美亚洲自拍另类人妻| 99久久久er直播网址| 久久性爱免费送| 一二三区在线| 精品免费成人久久| 午夜操一操| 肏逼福利网站| av凤凰久久久| 中文字幕在线观看网页| 97超碰久| 欧美天天影院| 亚洲欧洲无码bt精品合集| 五月天玖玖资源站| 东北老女人的激情视频| 中文字幕第7页| 久久久亚洲Av| 97人妻色| 激情文学亚洲| 国产精品亚洲天堂网址| 91色艳| 人人操人人射人人干| 亚洲最新Av| 夜夜草网站| 日韩精品作爱导航| 插入逼91| 亚洲激情综合| 超碰欧美97资源| 国产黄片精品在线| 大香蕉伊人亚洲| 992视频一区| 天天色综亚洲91污| 中国黑人三级片网站上区| 欧美成人性活片| 精品国产一区二区三区香蕉欧美| 偷拍伦理视频| 97欧美日韩| 中文字幕精品区先锋资源| 亚州 综合 色图| 日韩一级久久毛片| 一区二区三区在线资源| 熟妇人妻丰满久久久久久久无码| 黄片无码在线制服| 热久日综合| 亚洲欧洲无码bt精品合集| 精品久久在线区一区| 亚洲中文字幕av| 国产福利第一视频| 四虎精品亚洲| JIZZJIZZ国产精品喷水| 久久久久久久久久久久久久久久9| 久久草视频污视频| 日本成人A片网站| 欧美夜色| 欧美αv.com| 色哟哟1区2区| 91真人天天在线| 婷婷爽人人婷婷爽视频| 俺去俺来也在线www| 九九国产| 12一15性XXXX粉嫩国产| 精品久久久久久亚洲| 超碰在线综合97| 妇女性内射冈站HDWWWCOM| 亚洲精品819| 17c嫩草51久久91嫩草| 又黑又大又粗| 牛牛AV人人夜夜澡人人爽| 你操综合| 老子午夜伦不卡影院| 嫩草影院永久在线制服丝袜| 欧美亚洲第一页| 久久精品国产精品| 欧美一区二区亚洲天堂| 偷偷人人精品女女久久| 精品.99999| 久久69精品久久久久久久| 成人一区二区三区四区| 日本护士高潮| 精品午夜福利导航| 操逼内射干逼白丝91| 一牛影视成人片免费| 后入合集| 久久99国产综合精品女同| 中文字幕,人妻,日韩| 欧美线天码中字| 亚洲欧美精品一区天堂久久| 亚洲欧美首页| 成人AV在线网站| 欧美亚洲日韩人妻在线观看| 日本影视久久免费| 亚洲男人的天堂网| 91五月天| 免费av高清无码| 欧美色老汉| 久久的网站啊啊啊啊啊| 亚洲自拍天堂| 97超碰美女| 欧美天堂第二区| 99热官网| 久久精品国产亚洲AV无码电影| 天天狂操夜夜狂日| 青青草日本中文字幕| 99久久99九九99九九九| 国产精品99精品视频网站| 久欲AV| 一区麻豆 高清中文字幕| hd成人一区二区在线| 日韩猛交| 亚洲欧美视| baiduhicn.com。| 色色五月天婷婷| 久久久久久日韩| 翔田千里A片一区二区| 精品久久9| 第45页一区二区| 五月婷婷影院| 中日韩久久久| 大香蕉视频一二三区| 国产一区在线看| 亚洲啪啪啪啪视香蕉| 亚洲高清无码免费观看视频| 美女操逼A A| 操国产高清| 97国产|免费| 97欧美久久久久久久| 内射黑人| 91人妻视频| 中亚精品极乱| 97色碰| 中文字幕 国产区| av天堂精品久久| 免费1级a做爰片观看| 人人爱人人乐人人操| 欧美日韩欧美| 国产精品另类| 四虎精品亚洲| 国产精品一区二区麻豆| 人人摸人人舔一区二区| 少妇第一页| 午夜毛片高清免费不卡| 北京美女一区二区| 一区二区国产视频在线观看| 性色avv| 美女高潮视频91| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 久久av网| 亚洲男人的天堂AV| 欧美精品偷拍| 婷婷久久大香蕉| 激情综合久久| 国产亚洲人妻综合日韩 久久| 婷婷丁香熟妇综合网| 久久国内| 精品国产精品一区二区| 婷婷综合五月天| 六月色婷婷| 亚洲性综合9| 黄色小说亚洲| 日韩精品人妻系列无码天堂| 香港日本韩国人妇99www.wccm20| 久久久久久波多野吉衣高潮| 久久精品72| 天天草AV| 欧美综合色图网| 男人的天堂三级| 九九九九九九精品| 天天92av| 久久久久亚洲熟妇熟女| 呦呦影院| 日本精品高清一二区一本到| 九九色影院| 九九热精品在线| 嗯嗯嗯啊啊啊在线免费观看| 5252色欧美在线| 禁十八久久| 天天操美美| 亚洲Av诱惑| 天天躁日日躁狠狠躁| 人妻偷拍一区二区三区| 国产 v乱码一区二| 熟女突然公开看18禁影片| 91丨九色丨熟女高潮| 91在线免费观看处女| 亚洲区限制级| 熟妇人妻丰满久久久久久久无码| 富女玩鸭子一级毛片| 国产精品久久久久无码A√| 加勒比久久综合网高清| 91精品国产综合久久久蜜臀| 素颜老阿姨乱情色| 日本黄色精品| 成 人片 黄色大片| 狠狠干狠狠色| 啊啊啊好大好湿| a啊啊啊啊啊啊啊啊一区二区| 在线观看不卡一区二区三区| 黄色片大香蕉| 成年男人的天堂| 亚洲人精品久久久| 欧美呦呦性爱| 色婷婷激情| 久久精品人妻一区二区| 麻豆三极片| 黄色片一区二区三区四区五区 | 欧美91网| 亚洲精品天堂久久A∨51成人漫| 91狠狠综合久久久久久| 国产视频第2页| 欧美不卡在线一区二区| 久久亚洲AV无码专区国产精品| 高清无码网址| 欧美伦乱| 欧美日韩国产高清在线一二三区 | 亚洲综合色网| 天综合网| 午夜美女诱惑电源网| 日韩欧美大力操| 欧美熟爽综合| 伊人欧美大香蕉视频| 岛国网址国产 | 日韩有码回春沙龙第一页| 午夜a成v人电影| 日本三级大片| 亚洲资源吧| AV免费在线播放一区| juliaann精品熟女一区| 91亚洲人| 欧美日韩国产在线| julia国产在线 | 色老汉色| 黄骗免费网站| 日韩人体偷拍| 中文久久| 国产精品久久久鸭无码的功能| 伦理弟一页| 亚洲,日韩,欧美,成人播放| 色狠人在线99| 肏逼视频日本| 污到发麻的视频 国产| 精品久| 欧洲熟妇xxXx欧美老妇裸体| 久草成人影片| 无码自拍SM| 亚州色图欧美色图| 美女黄频a美女大全免费皮| 中文字幕精品专区搜索结果91| 91成人久久| 丝袜美女诱惑 91 视频| 亚洲无码?第一页| 九九九九九九九| 99精品成人免费看| 日韩干B| 开心五月深爱五月| 麻豆视频一区二区| 亚洲精品819| 老子午夜伦不卡影院| 成人五月天色网| 久久久精品无码亚免费| 国产风韵犹存熟妇三区| 伊人久久婷婷| 青草成人免费视频一com| 欧美99热| 熟妇乱伦一区二区| 青青草男人天堂| 亚洲成人福利电影免费| 中文字幕av片| 国产丝袜视频| 中文字幕乱码人妻二区三区| 日韩 欧美 国产 麻豆| blacked精品一区国产| 99热在线只有精品| 亚洲国产综合久久天堂| av在线播放国产一区| 99福利社| 一区久久久二区| 日本色色色色色视频| 男人的天堂三级| 麻豆区99999| 亚欧国产无码精品在线| 黄片www视频免费| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 超碰97在线色男人??| 久久精品色欧美aⅴ一区二区| 蜜臀99久| 一区二区三区成人| 999亚洲国产视频| 青娱乐黄色录像| 艳尻美人妻| 丁香五月天激情| 97视频在线免费观看| 亚洲青青草| 欧美日韩人人精品| 欧美 亚洲 偷拍自拍| 欧美国产精品久久九九| av日韩中文字幕| 欧美性区| 国产精品无码论坛| 2017av无码免费无线播| 久久久久久99999国产精品| 啊a一区在线| 国产浮力影院第1页| 欧美第一页| 中文字幕激情小说| 日韩精品国模| 啊啊啊啊啊啊啊国| 91超碰人人操| 国产精品免费日韩| 少妇熟女1区2区3区| 婷婷人妻激情| 东北操逼| 国产五码丝袜屁眼| 亚洲砖码砖专无区2023| 亚洲中文字幕精品一区| 久久久久久久久久久久色网| 天天操天天7| 中文字幕乱码人妻一区二区三区,99精品| 中文字幕av乱伦| 在线观看高清AV| 超碰在线人妻中文字幕| 久9爱精品| 日韩精品一区,二区 九九...老司机| 国产夜夜操| 中文高清一区二区的| 国产树林里野战在线看| 小视频玖玖| 欧美精品一区二区少妇免费A片| 欧美色人| 丰满人妻一区二区三区免费 | 亚洲 欧美 日韩另类 麻豆| 国产精品在线网站| 色婷婷婷五月天激情四射| 韩国女主播青草福利视频| 99久在线精品99re8热| 国产97视频免费观看| 99久久e免费热视| 国产强奸乱伦无码视频| 97久久网| 热思思免费视频| 国产资源中文字幕在线| 欧美伦乱| 91色欧美| 超碰97 线线 在现| 91综合中文字幕| 亚洲春色欧美| 欧美亚洲首页| 91爱网| 97超碰精品| 78精品在线| 精品传媒在线一区| 天美传媒AV在线播放| 亚洲?V高清一区二区三区尤物| 久久人妻一区二区三区高清| 韩国毛片一区二区三区| 人妻激情视频| 中文字幕一二三| A级国产欧美激情在线| 探花精品 一区二区| 国产在线综合网| 天天干天天燥| 黑人精品成人一区二区三区| 久久99午夜精品一区人妻| 久久 国产精品 一区| 蜜桃久久一区二区三区| 午夜天堂网| 99热在线不卡| 午夜精品人妻二区三区| 78m成人视线| 天天上日日上日韩精品| 老外又粗又长一晚做五次| 91快色色色色色| 亚洲高清在线| www.操| 北京美女一区二区| 日韩 女同 综合| 凌辱美少妇久久aV| 成人性爱免费播放| av网站在线观看了| www九九热| 日han少妇无码| 超碰社区97| 78久久| 操逼啊啊啊91| 麻豆天美国美国产| 亚洲欧美日韩电影网站一区| 风月影院男女十八禁| 欧美色网络| 久久一区二区高清免费| 天天干美少妇一区| 精品96久久| 亚州欧美在线| 天天日天天搞天天干| 五月丁香成人网| 激情四射五月天| 啊啊啊啊好疼| 二男一女成人A片| 五月久久HDAV| 97国产精品在线观看| 久久伊人最新网址视频| 国产成人无码高清| 一区二区不卡| 亚洲成a人v欧美综合天堂下载| 男女激烈网站最新| 婷婷香蕉| 少妇精品久久久八区九区| 伊人网青青| 日韩97超碰中文字幕| 蜜桃丰满熟妇av无码区不卡| a片在线播放| 920日本午夜免费| 中文字幕av一区二区三区人妻少妇 | 在线亚洲 欧美 日本专区| av天堂天堂av日韩| 日韩AV中文字幕电影| 青青久草| 国产成人bd在线观看| 久久鲁夜| 嗯嗯啊啊操我| 色色五月天婷婷| 青青草原成人| 人妻系列无码专区中文有码| 国产欧美一区二区| 97超碰美女| 五月丁香成人网| 人妻蜜桃臀| 欧美,日韩,亚洲视频| 情色av电影| 久操91视频| 91美女视屏| 1区2区3区视频| 亚洲精品尤物yw在线影院| 亚洲男人的天堂一区二区| 91精片| 亚洲情色电影网| 日本大香蕉综合网| 91碰碰| 中国熟妇| 日本熟妇一区二区三区| 人妻精品一区二区| 欧美拳交在线播放| 国产91美女视频| 色99色| 91五十路| 久久精品人体| 亚州性色| 欧美熟妇视频| 亚洲欧美日韩免费观看| 免费农村成人少妇人妻Aa一区二区视频 | 97操综合| 91日本在线观看| 四虎影视精品| 久久综合99| 色香AV| 91骚妇| 日韩欧美中文日韩欧美色| 熟妇激情| 国产精品久久成人免费| 人妻夜爽夜夜爽| 熟妇熟女视频一区二区三区| 综合久久99| 久久婷婷在线观看视频| 色在线视频导航| 亚洲免费97免费| 亚洲 国产 精品一区| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 视频在线观看青青99国产| 在线精品福利免费播放| 久草成人影片| 日本久久天堂| 欧美性色欧美| 欧美v亚洲v日韩v最新在线二区| 舔舔啊| 精品人妻伦一二三区久久| 69精品| 亚洲欧洲色情高清| 国产在线视视频有精品| 色噜噜狠狠色综无码久久合欧美| 天天看片天天爽| 亚洲欧美在线观看无码| 91天天美女| 国产女上位好爽在线| 天天色天天干天天射| 大香蕉2017| 国产亚洲人妻综合日韩 久久| 嗯嗯啊啊好爽| 久久精品72| 日本在线播放不卡一区| 日本媚薬中文字幕在线| 国产女上位好爽在线| 久久欲| 国产精品一区二区三区在线| 大香伊人在线一区| 色婷婷网| 欧美激情视频在线一区| 久久久久幕乱码| 手机av天堂久久久久| 美中日韩无码| 91丝袜在线观看| 青青草原成人| 东京太热久久久| 亚洲偷拍自拍在线视频| 三男一女不戴套的A片| 日1区2区3区2020| 色偷偷色偷偷欧美日韩| 综合操逼| 激情小说日韩无码| 国产综合久| 国产精品午夜福利视频| 丝袜内射| 丁香五月性爱| 国产亚洲中文不卡二区| 9久在线视频只有精品| 91色夜| 国产中文字幕在线观看| 亚洲激情天堂网| 成人 日韩欧美一区| 欧美亚洲日本激情在线| 天天艹天天日| 免费观看性欧美一级| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 成人一区二区三区四区| 九九在线视频| 我爱大香蕉| 亚欧高清在线| 欧美日韩在线国产在线| 中文字幕人成乱码熟女香港| 日本综合色图| aV中文麻| 青青操日韩| 久久精品国产97欧美精品亚洲| 亚洲色图综合网| 亚洲色图 图片| 97亚洲资源| 欧美亚洲影视| 91红杏| 91色黑人少妇| 青青草视频在线观看一区二区| 综合色图,成人综合网| 抽插无码高清一区| 亚洲中文字母在线播放| 久久精品国产亚洲AV片多多 | 欧美日韩精品久久久久东北老熟妇| 丝袜狠狠草尤物人妻av91| 色妹子A V| 九九热免费国产视频婷婷伊人五月| 色婷婷五月天| 淮穴色AV| 丁香五月影院| 国产精品一区二区三区在线密挑| 懂色综合久久久| 欧美激情性久久久久久| 亚洲av综合伊人久久| WWW操逼| 成人精品一区二区91毛片不卡| 亚洲 日本 国产 综合| 99亚洲国产精品色一区二区三区| 久九九九| 国产一级内射高清视频| 91色射| 亚洲男人的天堂在线看| 欧美中字二区| 久久久久78|