色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合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
返回資訊列表
中文字幕老熟妇黄色视频| 久久蜜色情在线视频xxx免费观看| AV大香蕉| 熟女在线视频| 白 大 人妻 区 在线| 按摩中文字幕| 夜夜嗨av午夜成人| 久久中文色图| 蜜臀久久99'精品久久久| 欧美天堂超碰97| 大香蕉97久久| 9 9无尺码天堂网| 狠肏骚人妻| 亚洲激情色片| 色欲人妻一区二区在线| 欧美激情 一区| 国产精品69久久久久久久| 丰满人妻-区二区三区免费看 | 日韩精品在线观看观看| 最近的最新的中文字幕视频| 亚洲色图 欧美热图 清纯唯美 另类自拍| 91夜色chaopeng| 激情终合网| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 人人污日韩一区二区| 少妇天堂网络| 欧美美逼| 99老司机精品视频在线观看| 日本超碰在线国产一区| 亚洲熟女乱综合一区二区三区 | 国产高清视频无码在线| 五月丁香六月婷综合成人综合| 蜜臀久久久国产| 搡老女人老熟女91老熟女综合网| 国产精品黄色三级av| 9九九九九视频在线观看| 国产欧美一区二区| 在线中文字幕极品av| 91人妻做a观看视频| 久久九九网| 超碰人人色| 大香蕉久| 欧美综合网| 囯产乱伦一区二区三女 | 搡老熟女老女人老熟妇免费视频| 在线看污网站| 欧美后入视频| 99久久99久久免费精品蜜臀| 26uuu国产亚洲综合| 自拍偷拍草一草| 99精品在线| 日本精品人妻少妇一区二区| 78操B| 精品一区二区三区国产| 韩国黄片aaaa| 97内射偷拍| 91白虎| 中文字幕乱在线伦视频中文字幕乱码在线| 亚州伊人色综台| 伦理日韩国产久久| 无码高清操逼网址| 久操婷婷| 成人日韩中文字幕| 国产亚洲精品激情| 日日夜夜骚| 91爱啪| 亚洲中文一区二区三区视频| 爱妻综合网| 欧美高清18A片| 97中文天堂| 亚洲天堂少妇| 欧美精品自慰系列寂寞少妇| 91熟女视频网| 大香蕉综合| 久久久草草精品| 操逼逼一区视频| 欧美做爰无码A片视频| 欧洲精品一区二区三区| 日韩一区二区三区四区五区| 亚洲激情久久| 一二三四区电影| 日本人妻伦在线中文字幕| 9九九九九视频在线观看| 999综合色| 国产中文字幕在线点播| 少妇毛片久久| 最新无码国产| 玖玖爱综合| 高清国产精品福利网站| 色综合久| 久久久久久久久女黄| 午夜操一视频一区| 亚洲精品黑丝| 狠狠 91| 亚洲无码视频免费在线观看网址!| 久热色情精品| 99久久e免费热视| 91丝袜| 亚洲美女自拍偷拍视频| 91情色| 天天日美女的B| 91狠| 无码伊人久久大杳蕉中文无码| 青娱乐休闲视频在线观看| 欧洲精品一二三在线| 国产白嫩漂亮KTV在线| 久久久中文| 天天日骚逼熟女| 欧美色图私拍91| 婷婷色播婷婷| 温婉少妇玩3p| 91精品国产日韩欧美综合| 久久久四区| 色五月AV在线| 久久人妻一区二区三区高清 | 欧美Ⅴ性爱| 91网站18+| 欧美亚洲厕所精品偷拍91 | 少妇人妻在线| 欧美性天天影院| 久久精品免费| 色哟哟-国产专区| 射 色综合| 五月婷婷丁香| 天天天天操| 日本成人电影资源网| 搡老女人老91二区| 91蜜桃传媒精品久久久一区二区| 另类专区加勒比| 欧美老妇女内射网址| 天美传媒国产原创中文字幕亚洲欧美另类 | 91强热人妻| 黄色片一区二区三区四区五区| 色妇综合网| 东京热毛片调教| 96国产精品| 一区| 国产精品乱码久久久、久久| 精品综合久久久久久97| 综合情欲网| 日韩人人精品| 97se亚洲综合自| 午夜啊啊| 日韩啊V| 日韩福利电影网| 中文字幕在线观| 欧洲精品一级二级精品综合视频综合| 中文字幕日韩情色| 青青草久久| 久久夜夜夜| 东京热男人的天堂网| 无遮挡h肉动漫在线观看| 丝袜熟女一区二区三区| ..日韩av毛片精品久久久| a一区二区三区乱码在线| 91色色网站| 中文字幕一二三| 东京热毛片177b2viP| 九月伊人中文字幕| 国产美女裸体秘 永久无遮挡| av一区二区三区四区| 日韩免费av片高清无码| 黄网色一区二区三区四区精品| 爱我干综合| 日韩精品99999| 色播五月婷婷| 高树玛利亚无码流出| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 国产蜜臀在线| 久久春色| 精品人妻中文字幕4399| 欧美刺激色黄片免费看| 97网址www| AV高清一区| 欧日韩在线观看| 色天天野狼综合社区| 日本精品一区二区不卡| 51久久夜色精品国产麻豆| 国内毛片国产专区二| 99无码精品| 亚洲天堂另类小说男人| 国产精品久久久亚洲第一牛牛_在线观看 | 老熟女熟妇| 麻豆 亚洲 97| 国产sv美女内射| 国产精品白丝在线播放| 九九综合久久| 亚洲A色| 欧美色道啊| 91精品网站| 亚洲精品国产熟女| 99这里只有精品| 97看操| 999热日韩精品| 乱伦熟女论坛| 97久久超碰| 久久精品老司| 丝袜美腿丝袜| 日欧操屄| 99国产人成精品| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊| 四方色播| 1769一区二区| 国产一| 亚洲一区操| 色色色热| 亚洲中文字幕一区| 欧美熟妇成人一区二区| 蜜桃传媒一区二区亚洲| 日韩综合97p| 逼操网站| 久久久av爱| 午夜欧美J进J出白浆流出久久久| 综合欧美亚洲| 久久露脸国产老熟女| 一区| 中文字幕高清精品一区| 情色AV电影| 欧美综色欧| 日日噜噜夜夜狠狠视频无| 日韩AV片| 久久αⅴ| 色五月婷婷久久| 学生妹天天看| 日本免费专区| 亚洲综合69| 97色亚洲| 亚洲情色五月天| 夜夜高潮夜夜爽夜夜爱爱一区| 黄色AAAAA欧美| 男人的天堂色偷偷青青草视频婷婷网| 日韩兔费看黄片| 久久久久久人妻| 综合天天。| 啪啪视频亚洲第一| 在线亚洲丝袜视频网站| 蜜臀无码视频在线观看| 日韩一级二级在线| 国产精品一区av在线| 欧美极品女人的天堂| 丝袜 中出 制服 人妻 美腿 中文字幕| 亚洲 欧美 手机在线观看| 你草精品在线视频| 色色色日本| 久久‘黄片视频| 中文AV制服乱伦| 九九久久国产精品怡红院| 嗯嗯啊中文字幕| 国产黄片精品在线| 五十路熟女人妻一区二区三区四区五| 97久久国产精品女不卡| 中文一区在线视频| 久久性视频| 精品人妻一区二区三区不卡断| 韩国一级做a久久久久| wwwss在线观看| 国模限制级电影| 欧美成人午夜免费福利785| AV天堂国产| 99热在线只有精品| 精品无码久久久久久国产浪潮| 男人天堂婷婷五月天校园春色| 蜜臀久久99精品久久久久久-DVD| 60秒免费视频| 人妻大香蕉| 久草午夜| 亚洲97综| 国产亚洲福利第一页丝袜| 黄色一区三区| 久久精品国产亚洲AV高级北京| 色九九综合AV| 欧美九9 9 9| 国产熟妇 码视频户外直播| 国产白嫩精品久久| 日韩精品中文字幕一| 超碰色美女| 欧美色棕合| 欧美中文字幕日韩在线| 91真人天天在线| 强奸乱伦日韩AV| 99少妇| av婷婷色网| 国产精品久久久| 久久久久久久久久黄色网| 欧美激情中文字幕另类小说| 精品国产乱码久久久久久久| 中文字幕在线观看第二页| 中文字幕国产| 日韩大香蕉| 中美日韩毛片| 国产麻豆一级精品视频| 黄片qw| 亚洲,欧美,综合网| 亚洲自拍欧美国产首页网曝| 日本大片日本一区二区免费高清| 91 丝袜在线播放| 国产精品久久久久久久免牛肉蒲团 | 大香蕉免| 开心五月婷婷激情| 中文字幕精品一区二区精| 五月天婷婷社区| 麻豆九九九| 人妻熟女av国产网站| 成人性爱免费播放| 综合色区偷拍| 美女干逼2| 丰满人妻av一区二区三区| 91性情| 最新精品久久蜜桃 | 亚洲天堂性爱| 激情综合婷婷| 午夜AV人气不卡| 久久东京热久久| 九九九精品一区二区无码| 国产激情久久| 久久久久国产一区二| 青春草莓视频在线观看网址| 风间由美日韩欧美久久| 加勒比伊人综合| 久草综合京东| 婷婷久久五月天| 人妻中文字幕日韩电影| 性色av大全| 欧美综合网在线| 少妇大屁屁| 97欧美色资源| 亚洲激情色片| 色九月综合| 一本一道人妻久久一区二区三区 | 五十路成人在线视频二区三区| 在线天堂999| 丁香五月大香蕉| 免费人成?大片在线播放| 大黄片做爱的大的| 中文字幕一区二区在线日韩精品| 91精品无码久久久久久久| 日韩在线电影| 精品人妻一区二区三区四区| 欧美激色| 亚洲的天堂网| 国产少妇高潮| 日产成人久久| 亚洲中亚日激情视频| 无码人妻精品一区二区三区九九| 亚洲男人的天堂AV| 动漫av中文| 亚州人妻| 国产第二页| 高跟伊人julia ann| 国产亚洲 中文欧美久久| 亚洲欧美大| 丰满人妻一区二区三区免费,| 中文字幕精品一区二区精品| 天天天天天干夜夜夜夜夜操| 无遮挡猛进视频免费无限观看| 少妇高潮对白在线观看| 国产树林里野战在线看| 国产亚洲精品玖玖玖在线观看| 日本性爰一道本| 久久亚洲欧美中文字幕国语| 岛国毛片在线观看免费| 国产69精品久久久久99尤物| 国产女人极品高潮毛片| 久久99亚洲精品久久99果| 色婷婷综合网站| 国产激情综合五月久久| 中文字幕一区 二区三四五 区日 日骚| 99色视频| 欧美综合色站| 国产熟女高潮一区二区三区| 国产精品乱码久久久久久久久| 蜜臀网址在线| 国产精品精品系列在线观看| 国产精品69人妻无码久久久| 99九九久久| 欧美日韩性感| 国产美女激情| 久久精品操| 亚洲男人的天堂va亚洲男人社| 九九九九精品视频| 一级二级在线观看| 精品一区二区成人| 亚洲色图久久精品蜜| 超碰97资源大奶| 欧美久久人妻少妇一区二区| 67914在线兔费成人视频| 激情小说亚洲色图| 一级日本牲交大片好爽在线看| 黄片无码在线制服| 亚洲天堂性爱| 丝袜色综合| 国产乱子伦一区二区三区在线观看| 国产综合日韩伦理| 人人操人人狠狠操| 九九成人精品| 欧美亚洲丝袜人妻制服中文99| 91AV入口| 人妻天堂综合网| 日本三级一区二区 在线| 天天插天天插| aV中文麻| 97在线视频观看免费| 破处bbq| 91偷拍欧美亚洲| 色情成人五月天| 中文字幕在线免费观看视频| 人妻嗯啊啊在线播放| 日韩色欲久久一二三四区| 日韩啪啪啪啪啪| 亚洲电影中字一区二区| 五十路熟女,国产欧美精品区一区二区三区| 五月丁香色婷婷| 欧美黄片欧美黄片xxx| 久久亚洲AV无码白度| 亚州黄站| 亚洲情色无码一区二区三区| 九九久久国产精品| 91蜜臀在线久久久久| 亚洲日韩精品在线播放| 狠狠中文字幕| 91九色在线| 97超碰超| 好舒服视频| 午夜综合在线| 9热9热综合网| 色天使大香蕉| 特色a在线上| 夜夜操美女| 久久婷婷六月综合| 午夜综合在线| 亚洲囯产精品女人久久久| 婷婷五月天激情小说| 日产成人久久| 18禁精品网站在线看| 欧洲射精91| 亚洲欧美不卡线| 婷婷色综合| 久久久久幕乱码| 日韩性爱啪啪视频| 91久久国产综合久久| 天天性射网| 一级久久性爱视频| k频道色撸撸| 欧美黑人精品在线播放| 操逼内射干逼白丝91| 欧美18老人禁| 日韩97视频!在线| 东京热双插| 五月婷在线| 欧美综合亚洲| 99久久99久久综合| 成人草草视频| 日本综合色图| 欧美亚洲今日在线| 夜夜操二区| 91色插| 婷婷五月花| 男女啊啊啊| 亚洲午夜免费狠狠干| 欧美欧美少妇| 97精彩视频网站| 97手机日韩| 少妇高潮99p| 91中出| 精品国产精品一区二区| 蜜臀99久久国产| 国内三级自拍小视频在线观看| 国产又长又大又粗的视频| 亚洲 欧美日韩 另类| 久久久久久免费电影| 中国一区二区亚洲人妻| 99999国产| 91美女中出| 婷婷婷婷婷婷久久久久| 欧美国产视频| 手机看片1024你懂的国产| 精品人妻视频一区二区在线播放 | 死我十八禁| 久久女婷| 日韩免费a级毛片无码a∨| 99re不伦| 人人人人插| 99色热| 日韩精品一二三四| 黄页| 久久精品老司| 国产熟女完整版中字 | 久久美女福利是上海美女| 91欧美经典| 麻豆av一区二区三区| 国产精品美女在线一区| 色悠悠伊人网五月天| 99热97| 乱伦熟妇一区二区| 自拍第一页| 人妻啊啊人妻啊| 最新国内自拍av免费| 久热99999| 天美av在线观看| 成人性爱av| 久久精品国产97欧美精品亚洲 | 九九九九九九九九九九九蜜桃| 人妻人人操| 国产老女人久久毛| 18禁久极品美女久久哦哟呀!| 欧美性爱视频免费一区一A | 精品美女久久久久| 精品女同一区| 高凊专区人人操| 淫荡少妇免费| 亚洲色阁| 国产精品久久久久久9999| 伊人综合色网| 日本高清一区二区在线| 国产一区二区三区高清视频| 乱码人妻一区二区三区| 好湿好紧好爽 视频| 中文字幕一区二区韩| 手机在线大香蕉| 亚洲青色欧美| 少妇500双飞99| 成人性交免费视屏| 亚洲熟女乱综合一区二区三区| 成年女人18级毛片毛片免费观看| 无码不卡亚洲成?人片| 土豪酒店各种姿势玩弄极品幼稚| 一区二区你上我| 亚洲欧洲精品视频发布| 91在线综合网| 欧美一级久久久丰满| 久久久久久9| 久久网亚洲| 另类亚洲图色| 男人兔费天堂| 精品-91人妻子系列| 国产污视频麻豆传媒一区二区| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | aV中文麻| 少妇色欲综合网2| Sekablack无码一区| 亚洲综合另类色图| 欧日韩在线观看| 狼人综合婷婷激情四射 | 青青久日| 性爱AV天堂| 口爆欧美91| 口爆综合网| 国产精品自拍xxxx| 亚洲一区二区三区中文字幕| 男啪女色黄无遮挡免费观看| 94色色电影网| 久久久极品| 91久久久久| 亚洲91大片| 国产乱码精品久久久久久| 按摩中文字幕| 91黑丝少妇| 久久男人的天堂国产| 人人爱操| 另类小说五月天| 亚洲成人综合在线| 国产超碰| 超碰碰碰碰| 五月婷婷爱六月丁香色| 亚洲色诱惑| 色牛牛AV| 99色视频| 伊人色综合网| 炮色五月| xxx亚洲午夜天堂| 中文字幕 一区二区 亚洲无码| 国产少妇与亚洲av| 精品人妻一区二区免费蜜桃| 亚洲精品一二三四区| 国产久久久9999| 亚洲A色| 久久水蜜臀亚洲AV无码精品| 白丝少妇一区二区| 九九九九九九九九九九精品视频| 9999亚洲精品| 曰本91情色| 美女网站黄页| 玖玖爱综合网| 亚洲精品欧洲色| 亚洲欧美黄| 3PAV乱伦视频| ji熟女.com| 影音先锋视频在线| 综合欧美日韩在线观看| 精品性爱无码在线播放| 亚洲综合激情五月久久| 国产精品一区人妻精品阁在线| 偷拍欧美综合| 亚洲天堂另类美腿| 久久夜嗨| 熟女熟妇一区二区三区视频| 亚洲天堂另类| 亚洲国产综合图区中文字幕 | 欧美一二三区四五区| 好看的91视频| 亚洲国产青青| 亚洲色阁| 99这里只有精品国产| 国产 亚洲 丝袜 制服| 极品色www影院| 久久久一级| 亚洲国产一区二区三区在线| 媚薬在线视频麻豆| 欧美黑人91| 青青草久草| 欧美日韩啪啪电影| 在线可观看的黄色网址| 大香蕉亚洲中文| 又黄又粗又硬又长又大| q2午夜理论片夜色av| 欧美高清16| 强乱老妇中文字幕| 亚洲高清视频在线免费观看| 欧美黄色片在线播放| 国产精品4p在线观看| 加勒比大香蕉视频在线| 日韩小电影| 99这里只有精品| 久久女人| 亚洲天堂人妻一区二区| 婷婷爽人人婷婷爽视频| 夂久色| 成人一级二级| 超碰精品在线| 青青草日本中文字幕| 亚洲一区二区久久久久| 中文字幕成人理论在线| 欧美论理片| 夜夜躁狠狠躁日日躁av| 97久久超碰日韩精品| 国产精品内射婷婷一级二| 少妇干B| 日韩少妇无吗| 九月丁香综合网| 欧美 色 亚洲| 69精品少妇一区二区三区蜜桃| 成人性交午夜免费片| 殴美性色a级欧美| 青青青青操国内视频在线| AⅤ片水多多| 五月天色色网站| 性老妇一区二区三区| 99re99| 国产精品无码论坛| 久久久噜噜噜久久久| 中文字幕精品亚洲熟女| 日韩av性爱在线播放| 久久婷婷视频| 亚洲中亚日激情视频| 中文字幕精品免费一区二区| 亚洲国男人的天堂| 欧美色图另类图片| 人人摸人人添人人操 | 久久精品六区| 超碰午夜| 强奸少妇AV导航网| 欧美性夜| 婷婷综合五月| 玖玖爱伊人玖玖爱| 久久美女国产| 伊人网在线观看| 亚洲精品国产精品成人| 天天淫人人妻日日色| 亚洲深夜福利| 激情五月婷婷| 抽插亚洲无码| 国产精品久久久三级无码| 欧美天堂亚洲电影院一区在线播放 | 日韩av女优在线免费一区| 97操97干| 日本亚洲熟女视频| 亚洲午夜蜜臀| 日韩少妇一区二区三区| 午夜毛片高清免费不卡| 免费一二区| 国模一区二区三区| 91狠狠狠| 91热爆在线| 狠狠爱AV| 一区二区三区精品视频| 久久久免费视频18| 亚洲AV成人无码一区二区三区在线观看| 欧美色图在线视频少妇| 思思热在线cao| 亚欧美综合| 被体育老师抱着c到高潮| 超碰97综合网| 综合网欧美在线| av天堂电影网| 肥臀熟女福利视频一区二区| yaouchengrenav| 97色97好| 日韩精品人妻一| 欧美激情 日韩精品| 国产一级137片内射麻豆| 青青草色插素人| 国产亚洲女v在线观看| 国外91| 日韩欧美字幕亚洲一区二区| av2014 日韩在线中文字幕| 大香蕉啪啪啪| 日韩激情无码影院| 日日日骚女人精品| 一区二区三区欧美激情| 97超碰欧美精品| 久jiu久神马影院| 久久久国产av美女私房| 久久男人网| 亚洲免费在线探花| 疯操AV| 五月天色图影视| 日本成熟少妇A∨网站| 伊人伊人LD| 精品国产久热在线观看| 夜夜骑夜夜操| 欧美91在线+|+欧美| 国产精品久久成人免费| 日韩精品啪啪啪| 蜜桃久久久久久久| 国产黄片在线免费观看| 日韩色女精品| 77777亚洲蜜臀精品久久综合蜜臀| 欧美日韩啪啪电影| 伊人在线大香蕉二。| 伊人AAA| 在线岛国新天堂8| 蜜臀在线看片| 婷婷九月| 欧美性生活免费网| 综合熟妇一区二区三区| 啊啊啊啊啊啊啊国| 蜜乳AV一区二区三区四| 91精品91久久久中77777| 超碰1024久久| 尹人大香蕉视频在线| 伊人一区二区在线播放| 97欧美色| 亚洲三级网址久久最新| 日韩精品一区的| 三级日韩一区二区三区| 97日韩欧美亚洲| 97精品视频免费| 婷婷五月天影院| 欧美大香蕉久| 国产成人五月天丁香花| 亚洲精品1区| 亚洲人妻一区二区三区| 97任你吞精| 国产无马在线| 亚洲欧美97| 99re在线视频| 一区二区首页| 竹菊影视国产一区二区| 操逼免费视频无码国产| 精…码一二三区| 99久久9| 97爱爱影院| 色婷五月天| 一级久久久久久久久久久 | 99色色| 97人人操人人摸| 曰韩人妻中文字幕在线| 97久久综合网| 国产久久男人天堂| 欧美天天谢综合网| 欧美久久九九| 97久久超碰| 亚洲精品第一| 日本十八禁免费看污网站| 超碰97网站| 99999久久精| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 婷婷久久大香蕉| 精品久久久久久中文| 日本人妻丰满熟妇久久久久久| 亚洲图片91| 97久久久久久久久久| 九九国产热| 偷拍亚洲高清图片| 五月婷婷综合在线| 99色色网| 婷婷伊人| 天天操天天舔| 强奸乱伦大香蕉网| 欧美日韩在线国产在线| 色哟哟 日韩精品| 日韩无码极品| 亚洲欧美色图片| 青青草依人大香蕉| 精品女同一区二区三区| 玖玖爱伊人玖玖爱| 精品乱码在线观看| 天天干1区2区在线| 99日免费视频中文字幕| 美日韩一二三区| 九九九九九用不成了| 你草精品在线视频| 东北女人| 丝袜色综合| 啊啊啊啊啊啊啊在线| 91欧美另类| 欧美熟女丝袜| 一区二区亚州激情久婷婷欧美| 亚洲综合影视| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 日韩一级欧美一级国产一级台湾 | 亚洲午夜福利视频| 日va操| av在线播放国产一区| 亚洲精品97久久| av影片在线观看不卡| 一区在线精品中文字幕| 黄片视频观看| 亚洲,日韩,欧美,成人播放| 免费啪啪av| 高清无码 国产精品| 国产做?爰片久久毛片?片美国| 中文字幕狠狠玩| 国产亚洲色婷婷久久99精品91| 色婷婷网| AV天天综合| 97中文字幕色| 欧美激情色婷婷花野真衣一区二区| 亚洲黄色网址| 国产蜜臀在线| 操熟女91| 欧美高清18A片| 欧美日韩另类在线播放| 26uuu性物| 亚洲AV无码国产成人| 五月天激情婷婷| 国产久久久9999| 欧美日韩青操| 9久9久| 超碰97国产欧美| 中文一区二区三区影院| 欧美日韩色综合网| 成年女人18级毛片毛片免费观看| 亚洲精品男人的天堂| 蜜桃在线观看一区二区三区| 干B| 9美女超碰在线免费观看| 啊啊啊免费视频| 久久性爱精品一区| 五月丁香影院| 性生活久久久久久久久久| 丰满熟女人妻一区二区三五十一路| 亚洲涩图欧美| 国产精品直播在线观看直播| 婷婷丁香五月天综合东京热| 国产又粗又又黄又猛| 999 久久久| 三级色影综合网| 国内毛片婷婷六月色| 超碰在线91| www. 男人天堂成人在线| 亚洲女人91| 操我无码| 精品人妻一区二区三区-国产精品| 精品国产乱码久久久久久日本公司| 日日骚一区二区三区| 日本操逼视频不卡直接放| 中文字幕啊啊啊在线观看视频| 屌妞视频久久久久久久久久久久| 亚洲成成熟女人综合一区二区| 人妻一二三区| 伊人大香蕉在线| 亚洲脚交| 中文字幕日韩人妻视频一区二区三区 | 九九人妻| 国产又猛又粗又爽又黄| 三级三级三级日本99| 美国久久一二三四| 一区二区播放| 99老司机精品视频在线观看 | 内射中出日韩在线观看视频| av橘色网站| 芊芊操逼视频无码| 亚洲色性情三级| 亚洲风情在线观看| 不卡啪啪视频| 97在线青| 中文字幕一二区二三区人妻专区| 午夜免费视频1000| 欧美淫乱视频| 国产福利在线视频网站| 热天堂一区二区| 亚洲骚逼少妇| 人人摸人人干人人拍97| 日韩成人午夜精品久久高潮| 国产精品天堂| 久热大香蕉| 91久热| 丰满人妻一区二区三区大胸懂色| 懂色AV中文| 国产在线综合网| 国产精品交换一区二区| 美女黄页网站| 综合自拍| 丰满少妇精品一区二区| 久久久久久久久成人av解说| 欧美国产有色电影| 日本人妻中文字幕 | 亚洲精品天天影视综合网| 国产精品高潮久久久无码| 口爆综合网| 久久久久久久久久9| 午夜免费福利视频一区| 人妻人久久精品中文字幕| 91人妻做a观看视频| 日夜久久久九九九久| 性饥渴少妇av无码毛片| 九久9热| 欧美色综合| 亚洲色图久久成人| 色97国产69香蕉| 亚洲欧美国产其他二区| 欧美第二页午夜| 综合操逼| 曰本特级特黄特色黄色A级网站高清在线免费看 | 大香蕉草草| 婷婷久久网| 欧美激情久久久久| 人妻乱仑一区二区三区| 久久成人午夜狠狠| 最近2019中文字幕国语免费版| 久污| 婷婷色色五月| 天天爱天天操| 亚洲熟妇自偷自拍另欧美| 久久精品国产亚洲粉嫩| 日韩成人色图| 欧美AAAA黄片| 97天天做| 亚洲导航深夜福利| 天天综合91入口| 大香蕉丝袜一级片| 国产路线专区| 99丝袜福利在线播放| 91AV入口| 好屌色综合| 亚洲最大的综合性av| 久久久久久久久久久精| 中文字幕日韩综合| 国产精品久久久吖| 三级网站超变态精品| 无码操逼网| 碰人碰碰人人开房人肉| 丁香九月激情啪| 96麻豆精品一区二区三区| AV天堂丝袜| 日本道不卡| 美日韩在线不卡人妻| 欧美系列在线一区二区| 97在线视频免费看| 9/A片| 26uuu国产成人综合| www男人天堂| 欧美大码在线视频| 91人妻最真实刺激绿帽| 在线五区| ′ !γ}丶。。久久精品欧美一区二区三区| 亚洲欧美国产va在线播放频| 四虎在线播放| 91小视频| 国产品精品自在在线午夜免费 | 97欧美久久久久久久| 日日夜夜天天| 四虎影视永久在线免费| 97在线公开视频| 国产人伦精品一区二区三区 | 婷婷10月天青娱乐| 男人干美女| 日本欧美国内在线| 无遮挡男女激烈动态图| 粉嫩小泬久久久一区二区| 99精品无码| 欧美激情性久久久久久| 欧美综合网站999| 91是天天| 色婷婷五月综合激情中文字幕| 精品一区二区三区国产| 97免费视频在线观看视频| 人人色97| 亚洲精品亚洲人成在线麻豆| 色婷婷一区二区三区久久| 欧美性爱网97| 综合网欧美在线| 91小视频| 综合久久少妇中文字幕| 久久9精品网站| 夜夜操av亚洲一区二区| 91一起操| 岛国大片国产| 91精片| 熟妇人妻一区二区三在线 | 性爱av在线免费观看| 插入逼91| 久久综合超碰| 东京太热久久久| 日本一级二级三级网站| 亚洲国产一区二区日韩专区| 精品999一区二区| 综合网97| 熟女丰满人妻一区| 操逼日韩无码| 色嗨嗨在线| 91av熟女人妻| 好吊色综合| 国产美女91| 中文字幕视频免费| 亚洲欧美精品一区天堂久久 | 校园春色欧美色图| 青青草日韩无码| 人妻乱仑一区二区三区| 无码区蜜乳| 国产在线综合福利网站| 日本二三四区| 97超碰国产亚洲精品| 日本一区二区电影网站| 日本精品一区三区| 成视频在线观看免费看| 白嫩国模丰满一二三区| 在线岛国新天堂8| 青娱乐国产剧情av一区| 欧美激情精品久久久久久| 日日黄色三级网站| 操美女人妻| JULIA人妻风俗店中出电影| 五月天婷婷综合| 五月色综合| 免费AV播放| 性做久久久久久免费观看软件| A片A5445444| 午夜福利国产欧美日韩夜夜| 亚洲加勒比| 美女啊啊啊啊啊| 欧美91变态| 欧美精品一二三| 少妇蹲下露出大唇5| a啊啊啊啊啊啊啊啊一区二区| 天天夜夜rb| 神马久久免费电影观看| 亚洲久久东京热一二三四五区视频| 啊啊啊啊操死我了| 麻豆精品三区视频| 麻豆成人av| 综合天天网| 国产a级精品| 韩日男人的天堂| 中文字幕在在线观看网站| 亚洲国产精品久久久久婷婷青年| 91在线综合网| 成人AV素股で擦久久| 久久色激情一区二区三区| 欧美激情欧美精品| 在线97在线| 97一本大道亚洲一区| 欲色影视综合吧| 色色综合97| 97热视频在线观看| 97欧美久久久久久久| 久久久999国产精品| 青草伊人网| 大茄子熟女AV导航| 91麻豆天美| 国产主播福利| 精品久久久久久中文字幕三区 | 人人看欧美性爱| 凹凸视频在线观看伊人| av资源在线观看少妇| 国产一区二区三区影片| 天天爽天天操| 超碰久久性爱| 婷婷综合在线观看| 男人的天堂Va| 中文字暮97| 久久久久久亚洲中文| 毛片99-全集电影手机免费观看完整-B029AV| 国内三级自拍小视频在线观看| 麻豆三极片| 精吧天堂| 午夜成人福利影视| 亚洲 欧美 手机在线观看| 欧美国产精品久久九九| 91色色综合| 91在线免费观看处女| 强奸乱伦动态污图免费 | 狠狠色婷婷7777久| 九九精品99| 亚洲欲色| 97伊人超碰| 人人妻人人色一区二区三区| AV色图| 亚洲情色图片区| 女同亚洲欧美一二三区久久电影| 亚洲高清色综合| 欧美国产操逼| 国产农村妇女精品一| 手机久操欧美综合色码| 日日夜夜骑| 亚洲成av人片色午夜乱码| 1024人妻熟女一区二区三区| 日日干日日| 95精品在线| 蜜桃臀一区二区aV| 久久久夜夜夜| 91精品久久久久五月天精品| 天天看,天天做| 久久综合日韩亚洲欧美| 久草精品一区| a v网站在线播放| 思思热在线视频在线| 男人午夜天堂| 人妻铁牛TV| 久久婷婷电影网| 免费精品无码一级毛片牛牛影视 | 国产农村一一级特黄毛片| 中文精品一区二去| 免费精品福利在线观看| 农村少妇久久久久久久| 中文字幕精品一区欧美| 婷婷久久综合久| 精品九九九九九九九| 78久久| 操操逼操操逼操操逼逼| 97超碰国产亚洲精品资源| 欧美激情亚洲情色| 欧美中出| 国产黄色av大片网站| 日韩av熟女一区二区三区成人| 九九热午夜欧亚国产视频| 亚洲最新Av| 深爱五月婷婷| 伊人96在线| 一个人免费视频观看在线WWW| 99热成人| 99re热| 91视频伊人| 91精品电影18| 欧美天天综合站| 亚洲一区二区在线观看91| 国产高清在线观看欧美| 日韩无码一级黄色av片| 丁香色色网| 人妻内射一区二区在线视频| 综合网 欧美| 粉嫩绯色AV一区二区在线| 欧美精品久久96人妻无码| 啊啊啊啊啊啊啊啊视频| a级理论午夜日本| 欧美78| 少妇厨房愉情理伦片bd在线观看| 91大学精品激情戏| 超碰欧美97资源|