zoukankan      html  css  js  c++  java
  • 同余运算及其基本性质

    取模:

    a%b b定是正整数,尽管语言上b<0合法。/b=0出现除0错 

    (a+b)mod n=((a mod n)+(b mod n)) mod n

    (a-b)mod n=((a mod n)-(b mod n)+n)mod n     //注意减法, a mod n 可能小于 b mod n 结果需加上n

    ab mod n=(a mod n)(b mod n)mod n

    注意乘法,注意(a mod n)(b mod n)是否会溢出,用long long 保存中间结果

    1 int mul_mod(int a,,int b,int n)
    2 {
    3     a%=n;b%=n;
    4     return (int)((long long)a*b%n);
    5 }

    除法不可直接取模,用到乘法逆元

    同余运算:

    (a-b)%m==0,就称a,b关于m同余/a,b对模数m同余

    e.g. (100-60)%8==0,我们就说100和60对于模数8同余

    它的另一层含义就是说,100和60除以8的余数相同

    a和b对m同余,我们记作a≡b(mod m)

    你会发现这种记号到处都在用,比如和数论相关的书中就经常把a mod 3 = 1写作a≡1(mod 3)

    性质:

    如果a≡b(mod m),x≡y(mod m),则a+x≡b+y(mod m)//两边分别相加也是
    如果a≡b(mod m),x≡y(mod m),则ax≡by(mod m)//两边分别相乘也是
    如果ac≡bc(mod m),且c和m互质,则a≡b(mod m)//c,m互质时,去掉c也是

    模线性方程组:

    输入正整数a,b,n 解方程ax≡b(mod n).a,b,n<=10^9

    方程可理解为ax-b是n的正整数倍,设倍数为y,则ax-b=ny;即ax-ny=b  解此不定方程----扩展欧几里得算法

    同余方程的解是一个同余等价类

    b=1时,ax≡1(mod n)的解称a关于模n的逆invers----乘法逆元

    有解条件,a,n互质gcd(a,n)=1,此时,方程只有唯一解

  • 相关阅读:
    JavaSE教程-01初识Java-思维导图
    theano 模块 MLP示例
    EM理解(转)
    交叉验证(Cross Validation)方法思想简介
    imfilter()用法
    PSNR
    conv2、filter2、imfilter的区别
    图像上采样(图像插值)增取样(Upsampling)或内插(Interpolating)下采样(降采样),
    CSS清除浮动大全共8种方法
    支付宝轮播
  • 原文地址:https://www.cnblogs.com/kimsimple/p/6391572.html
Copyright © 2011-2022 走看看