• kummer定理


    没有校验过, 可能有锅qwq


    Kummer定理
    (n、m)为正整数,(p)为素数,则(C_{n+m}^m)(p)的幂次数等于(m+n)在p进制下的进位次数(在加法过程中)。


    前置芝士:
    (n!)含有的(p)的幂次数为:

    [sum_1^{infty} Big[ frac{n}{p^i} Big] ]

    (这个随便画画就可以证明了)


    证:
    (C_{n+m}^m)(p)的幂次数为:

    [sum_1^{infty} Big[ frac{m+n}{p^i} Big] - sum_1^{infty} Big[ frac{n}{p^i} Big] - sum_1^{infty} Big[ frac{m}{p^i} Big] ]

    [=sum_1^{infty} ( Big[ frac{m+n}{p^i} Big] - Big[ frac{n}{p^i} Big] - Big[ frac{m}{p^i} Big] ) ]

    接下来只要算出(m+n)在p进制下的进位次数(在加法过程中)就好。
    (m+n、n、m)分别写成(p)进制(下标为0的是最低位):

    [overline{c_0c_1c_2 cdots c_{unknown}} 、overline{n_0n_1n_2 cdots n_{unknown}} 、overline{m_0m_1m_2 cdots m_{unknown}} ]

    在加法过程中, 定义第(pos)位发生进位这个事件发生的条件为

    [n_{pos}+m_{pos} geq p ]

    若第(pos)位发生了进位, 则

    [overline{n_{pos+1} cdots n_{unknown}} +overline{m_{pos+1} cdots m_{unknown}} < overline{c_{pos+1} cdots c_{unknown}} ]

    当然, 由于进位最多进一((lfloor frac{(p-1)+(p-1)}{p} floor = 1)), 故当第(pos)位发生进位时

    [overline{c_{pos+1} cdots c_{unknown}} - overline{n_{pos+1} cdots n_{unknown}} - overline{m_{pos+1} cdots m_{unknown}} = 1 ]

    反之

    [overline{n_{pos+1} cdots n_{unknown}} +overline{m_{pos+1} cdots m_{unknown}} = overline{c_{pos+1} cdots c_{unknown}} ]

    [overline{c_{pos+1} cdots c_{unknown}} - overline{n_{pos+1} cdots n_{unknown}} - overline{m_{pos+1} cdots m_{unknown}} = 0 ]

    然后在(p)进制下(m+n)过程中的进位次数用数学式子表示就是这个
    ((overline{x_{pos+1} cdots x_{unknown}}) = (x/p^{pos+1}))

    [sum_1^{infty} ( Big[ frac{m+n}{p^i} Big] - Big[ frac{n}{p^i} Big] - Big[ frac{m}{p^i} Big] ) ]

    然后就证毕了。

  • 相关阅读:
    [小技巧]记录PHP错误日志
    PHP __autoload函数(自动载入类文件)的使用方法
    php5.3以前的版本安装出现Fatal error: Call to undefined function mysql_connect()
    mysqlnoinstall5.1.62win32 安装
    [php]PHP错误处理
    哈希表1
    哈希表2
    WinSock編程的多線程式控制
    编码转换 unicode gbk big5
    Parameters转换为Variant数组
  • 原文地址:https://www.cnblogs.com/tztqwq/p/12724577.html
Copyright © 2020-2023  润新知