lucas定理

内容

Lucas定理是用来求 C n m m o d   p C_n^mmod\ p Cnmmod p的值, p p p为素数的值
C ( m , n ) % p = C ( n / p , m / p ) ∗ C ( n % p , m % p ) % p C(m,n)\%p=C(n/p,m/p)*C(n\%p,m\%p)\%p C(m,n)%p=C(n/p,m/p)C(n%p,m%p)%p

证明

∵ p 是 素 数 \because p是素数 p
∴ C p k = p k C p − 1 k − 1 ≡ 0    ( k > 0 & & k < p ) \therefore C_p^k=\frac{p}{k}C_{p-1}^{k-1}\equiv 0\ \ (k>0\&\&k<p) Cpk=kpCp1k10  (k>0&&k<p)
( 1 + x ) p = 1 + C p 1 x 1 + ⋯ + C p p x p ≡ 1 + x p ( m o d   p ) (1+x)^p=1+C_p^1x^1+\cdots+C_p^px^p\equiv1+x^p(mod\ p) (1+x)p=1+Cp1x1++Cppxp1+xp(mod p)
设 n = t p + b 设n=tp+b n=tp+b
( 1 + x ) n = ( 1 + x ) t p + b = ( ( 1 + x ) p ) t ( 1 + x ) b ≡ ( 1 + x p ) t ( 1 + x ) b    ( m o d   p ) (1+x)^n=(1+x)^{tp+b}=((1+x)^p)^t(1+x)^b\equiv(1+x^p)^t(1+x)^b\ \ (mod\ p) (1+x)n=(1+x)tp+b=((1+x)p)t(1+x)b(1+xp)t(1+x)b  (mod p)
( 1 + x p ) t ( 1 + x ) b    ( m o d   p ) = ∑ i = 0 t ( x p ) t ∗ ∑ j = 0 b x b (1+x^p)^t(1+x)^b\ \ (mod\ p)=\sum_{i=0}^{t}(x^{p})^t*\sum_{j=0}^{b}x^b (1+xp)t(1+x)b  (mod p)=i=0t(xp)tj=0bxb
∵ b < p \because b<p b<p
∴ x k 的 系 数 只 有 t = k p , b = k % p 时 \therefore x^k的系数只有t=\frac{k}{p},b=k\%p时 xkt=pk,b=k%p
∴ C n k ≡ C n / p k / p ∗ C n % p k % p    ( m o d    p ) \therefore C_n^k\equiv C_{n/p}^{k/p}*C_{n\%p}^{k\%p}\ \ (mod\ \ p) CnkCn/pk/pCn%pk%p  (mod  p)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值