zoukankan      html  css  js  c++  java
  • 关于数论的知识整理——待更新

    一.整除

      性质:

    1. 如果$amid b$且$bmid c$,则$amid c$
    2. 若$amid b$且$amid c$,则对于任意整数$x,y$有$amid (b*x+c*y)$
    3. 若$amid n,bmid n$且$gcd(a,b)==1$,则$(a*b)mid n$
    4. 若$amid n,bmid n$,则$(a*b/gcd(a,b))mid n$     (因为$gcd(a,b/gcd(a,b))==1$)

    二.同余

      性质:

      1. 自反性:$aequiv a(mod m)$
      2. 对称性:若$aequiv b(mod m)$,则$bequiv a(mod m)$
      3. 传递性:若$aequiv b(mod m)$,$bequiv c(mod m)$,则$aequiv c(mod m)$
      4. 同加性:若$aequiv b(mod m)$,则$a+cequiv b+c(mod m)$
        若$aequiv b(mod m)$,$cequiv d(mod m)$,则$a+cequiv b+d(mod m)$
      5. 同乘性:若$aequiv b(mod m)$,则$a*cequiv b*c(mod m)$
        若$aequiv b(mod m)$,$cequiv d(mod m)$,则$a*cequiv b*d(mod m)$
      6. 同幂性:若$aequiv b(mod m)$,则$a^cequiv b^c(mod m)$
      7. 若$aequiv x(mod p)$,$aequiv x(mod q)$且$(p,q)$互质,则$aequiv x(mod p*q)$
          证明:$a*qequiv x*q(mod p*q)$且$a*pequiv x*p(mod p*q)$
          则$a*(q-p)equiv x*(q-p)(mod p*q)$
          进一步可以得出$a*(q\%p)equiv x*(q\%p)(mod p*q)$
          如此反复取模可以得出$a*(gcd(q,p))equiv x*(gcd(q,p))(mod p*q)$

    三.最大公约数

      求法

    1. 辗转相除法:
      原理gcd(a,b)=gcd(a-b,b).(a>b)
      int gcd(int a,int b){
          return b?gcd(b,a%b):a;
      }
    2. Stein算法
      思想:
      1. 如果$x==0$,则$gcd(x,y)=y$
      2. 如果$y==0$,则$gcd(x,y)=x$
      3. 如果$x,y$都为偶数,则$gcd(x,y)=2*gcd(x/2,y/2)$
      4. 如果$x$为偶数,$y$为奇数,则$gcd(x,y)=gcd(x/2,y)$
      5. 如果$y$为偶数,$x$为奇数,则$gcd(x,y)=gcd(x,y/2)$
      6. 如果$x,y$都为奇数,则$gcd(x,y)=gcd(x-y,y)$
  • 相关阅读:
    my ReadBook_dianzishangwu / 2020216 / dianzishangwuwuliu
    my ReadBook_shichangyingxiao / 2020208
    C#编写的clock
    Java建立JProgressBar
    java基本类型byte的取值范围
    正则表达式整理大全
    (C#)如何利用Graphics画出一幅图表
    设置鼠标可以移动窗体
    Java编程提高性能的26个方法
    数据加密工具设计经验
  • 原文地址:https://www.cnblogs.com/bennettz/p/8193877.html
Copyright © 2011-2022 走看看