数论 学习笔记

一、整除 约数 倍数

a|b表示b除以a余0,也就是a能整除b。称a是b的约数,b是a的倍数。
若a|b, a|c, 则a|(b+c)
若a|b, 那么对所有整数c, a|bc
若a|b, b|c, 则a|c

二、素数 合数

约数只有1和本身的数是素数,除此以外还有其他约数的数是合数。1既不是素数也不是合数。

三、算数基本定理

每个正整数都可以惟一地表示成素数的乘积。即有唯一的分解质因数方案:

x=a1p1a2p2anpn

其中x的约数个数可以表示为:
(p1+1)(p2+1)(pn+1)

求N的约数个数是 O(N)
想一想为什么?

四、最大公约数gcd( )和最小公倍数lcm[ ]


x=a1p1a2p2anpn

y=a1q1a2q2anqn


gcd(a,b)=a1min(p1,q1)amin(p2,q2)2anmin(pn,qn)

lcm(a,b)=a1max(p1,q1)a2max(p2,q2)anmax(pn,qn)


gcd(a,b)=gcd(ab,b)
gcd(a,b)=gcd(a%b,a)
lcm(a,b)=ab/gcd(a,b)
想一想为什么?
有时简化书写将gcd(a,b)记为(a,b),lcm(a,b)为[a,b]

五、欧几里德算法(辗转相除)

原理: gcd(a,b)=gcd(b,a%b)
递归下去,直到b=0,此时a就是最大公约数
代码:

int gcd(int a,int b){
    if (b==0) return a;
    else return gcd(b,a%b);
}
int gcd(int x,int y){
     int r=y%x;
     while (r!=0){
         y=x;
         x=r;
         r=y%x;
      }
      return x;
}

六、

连加

i=1nai=a1+a2++an

连乘
i=1nai=a1a2an

都满足 交换律分配律

七、其他符号约定&&高斯函数

[条件]=0(如果条件为假)或1(如果条件为真)
逻辑短路:

[n2][1n2=1]
当n=2时值为0(第一个式子不满足直接判为0,不用考虑第二个式子是否有意义)
高斯函数:
[x] x 表示不超过x的最大的整数(向上取整)
x 表示不小于x的最小的整数(向下取整)
特别注意:计算机中的取整为向0取整!

八、欧拉函数

ϕ(n) 表示小于n的数中中与n互质的数的个数,特殊地, ϕ(1)=1
性质:
(1)

ϕ(p)=p1p

证明:p的约数只有1和p,显然成立
(2)
ϕ(pk)=(p1)pk1p

证明: ϕ(pk)=pkpk1=(p1)pk1
1pk 中只有 pkp=pk1 个数和 pk 不互质,其余的数都和 pk 互质
那么我们可以将这个式子推广一下,即
ϕ(n)=ipki1i(pi1)n=ipkii

可以发现每一个 pkii 都是互质的,那么利用 ϕ 是积性函数和自然数的唯一分解定理可以证明。
(3)
ϕ(ab)=ϕ(a)ϕ(b),(a,b)=1
说明 ϕ 是一个不完全积性函数。
给出证明:
这里写图片描述
(4)
n=d|nϕ(d)
不要问我证明。
(5)
ϕ(n)=n(11p1)(11p2)(11pm)

用于 n ϕ
证明:
我们已经知道 ϕ(n)=ipki1i(pi1)n=ipkii ,经过简单的变形就可以得到
ϕ(n)=ipkiipi1pi=n(11pi)

九、莫比乌斯函数

μ(n)=0,1,1,n>1n1nnn1n

莫比乌斯函数的一个性质:
[n=1]=d|nμ(d)

同样不要问我证明。。。

十、同余

a,b对p取模得到相同余数,称a,b在模p意义下同余,记为 ab(modp)
性质:
同余关系的自反、对称、传递:
aa(modp)
ab(modp) ,则 ba(modp)
ab(modp) bc(modp) ,则 ac(modp)
同余关系的加减:
ab(modp) cd(modp) ,则 a±cb±d(modp)
同余关系相乘:
ab(modp) cd(modp) ,则 acbd(modp)
想一想为什么?

十一、欧拉定理和费马小定理

欧拉定理:若a,p为正整数且(a,p)=1,则满足:

aϕ(p)1(modp)

费马小定理:若a为正整数,p为质数,且(a,p)=1,则满足:
ap11(modp)

证明:非常简单,前面我们已经知道当p为质数时 ϕ(p)=p1 ,将此结论代入欧拉定理即可证明。

十二、逆元

逆元:如果 ab1(modp) ,那么我们称在模p意义下a,b互为逆元。
a有逆元的充要条件是(a,p)=1。(想一想为什么?)
所以,当p为质数时, ap 的逆元为 ap2 (由费马小定理可知)
逆元的作用:在模意义下进行除法。乘a的逆元等同于除以a。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值