数论,非代码,数学问题

来源:互联网 发布:政务数据开放 编辑:程序博客网 时间:2024/06/05 17:28

NUMBER THEORY


下面这些都是一些数论最最基础的概念知识,如果有一定基础,就不要看了,怕会玷污了贵眼。


我马上开始要学离散数学了,而整数又是离散数学的中心议题,数论又是讨论整数性质的重要数学分支,并且数论会在竞赛题中经常出现,伴随一些神奇的问题,我需要认真的探讨一下数论。


1、整除性如果m>0且比值n/m是一个整数,我们说m整除n(或者n被m整除).赋予它一个特殊的记号会更方便,记为:m\n <=> m > 0 且对某个整数k有n = m*k(不过实际上,“m|n” 远比 “m\n” 通用,不过竖线使用太多容易被看成是绝对值,并且也会容易看成为比值的意思)


▲两个整数m和n的最大因子数(最大公约数)(greatest common divisor)是能整除它们两者的最大整数:

                                   gcd(m , n)    =    max{ k   |    k\m    且     k\n}   (m,n整除k);

例如,gcd(12,18)= max{k | k\12 且 k\18  },k最大只能为6;. 

最小公倍数lcm(m , n)    =    min{ k   |    m/k    且     n/k}       (和最大公约数一样的,k整除m和n);


这里我们讨论gcd不较多,因为lcm可以由gcd计算出来,对给定的值:0<=m<n,计算gcd(m , n):

               gcd( 0 , n) = n;   gcd( m , n) = gcd( n mod m , m) , m>0.

      例如这样就有gcd(12,18) = gcd(6,12)  = gce(0 , 6),这就是欧几里得算法。


2、素数 PRIMES 

如果一个正整数p恰好只有两个因子,即1和p,那么这个数就称为素数(prime) 。1不是素数。像下面这样:

                                    2,3,5,7,11,13,17,19,23,29,31,37,41,...。

          有些数看起来是素数如:91(=7 x 13) 以及 161 (=7x23),但实际上不是,我们称有非平凡因子的数都称为合数所以每一个大于一的整数,要么是合数,要么是素数。

         素数之所以那么重要,因为它们是所有正整数的基本构造元素。任何正整数n都可以表示成素数的乘积。例如:

12  =  2x2x3     ,    11011  =  7x11x11x13     ,    11111  =  41x271  ;


3、阶乘的因子 (FACTORIAL  FACTORS)

          n!=1x2x3x4x...xn,(n>=0)

          当n>=25时,n!中的数字个数超过n。并且:n^n/2  <=  n!  <=(n+1)^n / 2^n,所以阶乘函数以指数形式增长。

对于更加精确的近似n!,我们可以利用斯特林公式:n!~sqrt(2*PI*n)*(n / e)^n,斯特林公式与n!的相对误差大概是1/(12*n).


4、互素 :当gcd(m,n)= 1 时,整数m和n没有公共的素因子,我们称它们是互素的。


5、mod : 同余关系 

          a≡b (mod m)   <=> a mod m = b mod m.

例如,9≡-16(mod5),因为9 mod 5=4=(-16)mod 5。公式a≡b (mod m)可以读成“a关于模m与b同余”。这个公式对于任意实数都有意义,不过我们只对整数用此定义。

如果a≡b (mod m) 且 c≡d (mod m)   =>   a+c≡b+d(mod m)  ;

       a≡b (mod m) 且 c≡d (mod m)   =>   a-c≡b-d (mod m);

       a≡b (mod m) 且 c≡d (mod m)   =>   a*c≡b*d (mod m);(b,c都是整数)

       ad≡bd (mod md)  <=>  a≡b (mod m),d!=0.

       ad≡bd (mod m)  <=> b(mod(m/gcd(d,m))),(a,b,d,m都是整数)。


原创粉丝点击