Lucas 定理及其证明、扩展

\[\binom{n}{m}\equiv\binom{n/p}{m/p}\binom{n\bmod p}{m\bmod p}\pmod p,\text{where}\ p\in prime\\
\text{Proof}:\\
(1+x)^p\equiv 1+x^p\pmod{p}\\
n=ap+c,c<p\\
H=\sum_{i\ge 0}\binom{n}{i}x^i=(1+x)^n\\
F=\sum_{i\ge 0}\binom{a}{i}x^{pi}=(1+x^p)^a,G=\sum_{i\ge 0}\binom{c}{i}x^i=(1+x)^c\\
FG=\sum_{i\ge 0}\binom{a}{i}\binom{c}{t}x^{pi+t}=(1+x)^{pa+c}=(1+x)^n=\sum_{i\ge 0}\binom{n}{i}x^i\\
\text{where}\ t<p.\\
\therefore [x^m]FG=[x^m]H
\binom{n}{m}\equiv\binom{n/p}{m/p}\binom{n\bmod p}{m\bmod p}\pmod p\\
\text{QED}.
\]

这个定理可以被拓展为 \(\bmod p^\alpha\) 的情况。

\[x=V_p(n),y=V_p(m),z=V_p(n-m)\\
\binom{n}{m}=\frac{n!}{(n-m)!m!}=\frac{\frac{n!}{p^x}}{\frac{(n-m)!m!}{p^{y+z}}}p^{x-y-z}\\
n!=(P\times 2P\times 3P\times \dots\times \lfloor\frac{n}{P}\rfloor)\prod_{i\bmod p\neq 0}i\\
m=\lfloor\frac{n}{p}\rfloor\\
\therefore\frac{n!}{p^{V_p(n)}}=\frac{m!}{p^{V_p(m!)}}\left(\prod_{i,(i,p)=1}^ni\right)\\
\left(\prod_{i,(i,p)=1}^ni\right)\equiv\left(\prod_{i,(i,p)=1}^{p^{\alpha}}i\right)^m\left(\prod_{i,(i,p)=1}^{n\bmod p^{\alpha}}i\right)\pmod {p^{\alpha}}
\]

两项均可直接得到。时间复杂度:

\[T(n)=T(n/p)+O(p^{\alpha})=O(p^{\alpha}\log_pn)
\]

对于任意 \(p\),使用中国剩余定理合并即可。

Lucas 定理证明与扩展的更多相关文章

  1. lucas定理证明

    Lucas 定理(证明) A.B是非负整数,p是质数.AB写成p进制:A=a[n]a[n-1]...a[0],B=b[n]b[n-1]...b[0]. 则组合数C(A,B)与C(a[n],b[n])* ...

  2. lucas定理 +证明 学习笔记

    lucas定理 p为素数 \[\dbinom n m\equiv\dbinom {n\%p} {m\%p} \dbinom {n/p}{m/p}(mod p)\] 左边一项直接求,右边可递归处理,不包 ...

  3. 【luogu P3807】【模板】卢卡斯定理/Lucas 定理(含 Lucas 定理证明)

    [模板]卢卡斯定理/Lucas 定理 题目链接:luogu P3807 题目大意 求 C(n,n+m)%p 的值. p 保证是质数. 思路 Lucas 定理内容 对于非负整数 \(n\),\(m\), ...

  4. Lucas定理——定义、证明、实现、运用

    目录 什么是Lucas定理 证明Lucas定理 Lucas定理求解组合数的C++实现 什么是Lucas定理 这是一个有助于分解组合数来求解的定理,适合模数小,数字大的问题. 有质数 \(p\),对于\ ...

  5. 大组合数:Lucas定理

    最近碰到一题,问你求mod (p1*p2*p3*……*pl) ,其中n和m数据范围是1~1e18 , l ≤10 , pi ≤ 1e5为不同的质数,并保证M=p1*p2*p3*……*pl ≤ 1e18 ...

  6. Lucas定理及扩展

    Lucas定理 不会证明... 若\(p\)为质数 则\(C(n, m)\equiv C(n/p, m/p)*C(n\%p, m\%p)(mod\ p)\) 扩展 求 \(C(n,m)\) 模 \(M ...

  7. [bzoj2142]礼物(扩展lucas定理+中国剩余定理)

    题意:n件礼物,送给m个人,每人的礼物数确定,求方案数. 解题关键:由于模数不是质数,所以由唯一分解定理, $\bmod  = p_1^{{k_1}}p_2^{{k_2}}......p_s^{{k_ ...

  8. Lucas定理和扩展Lucas定理

    1.Lucas定理 首先给出式子:\(C_n^m\%p = C_{\lfloor\frac{n}{p}\rfloor}^{\lfloor\frac{m}{p}\rfloor} * C_{n\%p}^{ ...

  9. Ceizenpok’s formula Gym - 100633J 扩展Lucas定理 + 中国剩余定理

    http://codeforces.com/gym/100633/problem/J 其实这个解法不难学的,不需要太多的数学.但是证明的话,我可能给不了严格的证明.可以看看这篇文章 http://ww ...

  10. 2023.2.26【模板】扩展Lucas定理

    2023.2.26[模板]扩展Lucas定理 题目概述 求\(\binom {n}{m} mod\) \(p\) 的值,不保证\(p\)为质数 算法流程 (扩展和普通算法毫无关系) 由于\(p\)不是 ...

随机推荐

  1. cmd操作license服务

    配置客户机的时候,有时候需要自启动相关服务,例如ArcGIS License Manager. 关于启动服务,参考了别人的意见.点击打开链接 最终用了net start 服务名和net sop 服务名 ...

  2. 基于.NET WinForm开发的一款硬件及协议通讯工具

    前言 今天大姚给大家分享一款基于.NET WinForm开发的一款硬件及协议通讯工具:PLC-CommunTools. 项目介绍 PLC-CommunTools是一款基于.NET WinForm开发的 ...

  3. 人工智能应用的“繁花时代”,各大企业何以破局AI模型挑战

    ​ AI技术的崛起,为各行业发展带来巨大变革和超强的创新潜力.然而,各大企业在拥抱AI的进程中并非一路坦途,"繁花盛开"的背后隐藏着AI模型生产与管理环节的诸多痛点. 先来看看部分 ...

  4. 使用 JDK19 虚拟线程实现5百万持久连接

    使用Project Loom 虚拟线程实现5M 持久连接| 黑客新闻 记得十几年前 erlang 火的时候,单机 20万连接.100万连接不停刷新,后来 golang 也开始炫耀,抛开连结构化错误处理 ...

  5. maven打包时跳过TEST的方式汇总

    使用maven打包时如何跳过test,有以下几种方式 针对spring项目 <plugin> <groupId>org.apache.maven.plugins</gro ...

  6. Qt音视频开发21-mpv内核万能属性机制

    一.前言 搞过vlc内核后又顺带搞了搞mpv内核,mpv相比vlc,在文件数量.sdk开发便捷性方面绝对占优势的,单文件(可能是静态编译),不像vlc带了一堆插件,通过各种属性来set和get值,后面 ...

  7. Qt开发经验小技巧101-110

    如果需要在尺寸改变的时候不重绘窗体,则设置属性即可 this->setAttribute(Qt::WA_StaticContents, true); 这样可以避免可以避免对已经显示区域的重新绘制 ...

  8. Qt音视频开发49-通用截图截屏

    一.前言 采用了回调方式的视频通道,截图只需要对解析好的QImage对象直接保存即可,而对于句柄的形式,需要调用不同的处理策略,比如vlc需要用它自己提供的api接口函数libvlc_video_ta ...

  9. Linux查找JDK的 实际位置

    检查JDK是否安装 java -version 查找java命令的位置 which java 查找列出该链接所指向的原始文件或目录 ls -l /usr/bin/java 查找目录 ls -l /et ...

  10. 9.24java wab实现创建新界面验证码

    <!DOCTYPE html> <html> <head> <title>User Login</title> <style> ...