zoukankan      html  css  js  c++  java
  • 除法的取模运算

    引自:http://blog.csdn.net/acmmaxx/article/details/18409701

    逆元: 若,b*b1 % c == 1 则,b1称为b模c的乘法逆元。
    在ACM中,许多除法取模都要用到求逆元。 但是,逆元,为什么能给我们带来 ( a/b ) % c == ( a*b1 ) % c ???

    (当然a/b要整除)

    要知道,取模等式等价变形中,是没有除法的!!!

    而推导式,还是没有用除法的地方!!!

    我们用反证法证明:
    若b*b1 % c == 1,则( a/b ) % c != ( a*b1 ) % c 若我们证明这一命题是错误的,我们目的就达到了。
    令,a/b   == k1*c+y1        a*b1 == k2*c+y2

    原来的证明则变成了:若b*b1 % c == 1,则 y1!=y2
    两式相减,有 a/b-a*b1 == (k1-k2)*c + (y1-y2)

    设 k == k1-k2      y == y1-y2 有,a/b-a*b1 == k*c + y

    左右乘以b,

    有 a*(1-b*b1) == k*b*c + b*y

    左右模上c,

    左边 == a*(1-b*b1)%c        

      == ( a*( 1%c - b*b1%c ) )%c        

       == 0

    右边 == (k*b*c + b*y)%c        

      == b*y%c

    因为a/b为整除,b显然不会是0,那么y必须是0,这与命题矛盾,证毕

  • 相关阅读:
    Qt中的标准对话框之QMessageBox
    OpenCV相机标定坐标系详解
    typedef定义数组类型
    导出csv文件(使用a标签)
    获取过去某个时刻时间戳
    查看有没有绑这个host
    $.param()序列化对象
    推荐一个好用的模版引擎工具
    node定时任务
    使用vscode打断点
  • 原文地址:https://www.cnblogs.com/wuwangchuxin0924/p/6396063.html
Copyright © 2011-2022 走看看