数论(一)模运算,同余

模运算

模运算即 mod,% 就是求余运算

1.a除以m的余数r,r= a mod m=a % m
即0 ≤ r ≤ m-1,a = k*m+r,其中 k=a/m取整,记作【a/m】
2.a%m 的正负由被除数的符号决定,c里面是和被除数的符号相同

同余

如果对于整数 m 和两个整数 a和 b,如果存在((a-b)mod)=0,就称a 和 b是同余的,记为a≡b(mod m)。

1.如果存在((a-b)mod)=0,当且仅当存在整数k,a=b+km
例如:
-7≡-3≡1≡5≡9(mod 4)
-5≡-1≡3≡7≡11(mod 4)

同余类(剩余类)

一个整数被 m整除之后的余数,有 0~ m-1 这m种情况,如果把所有整数按照余数的不同进行分类,可以的分成不相交的m个子集,把对m同余的所有数构成一个集合,叫做m的一个同余类(剩余类)。

1.整数根据对m的同余关系,可以构成一个划分
2.对给定的模m的运算,整数的同余关系是一个等价关系
集合A中元素的等价关系的一些性质,用 ~ 来表示
(1)自反性:对A中任意元素:a~a
(2)对称性:对于任意的a,b属于A,若a ~ b,则有b~a
(3)传递性:对于a,b,c,属于A,若a ~ b,b~c,则a ~c

完全剩余系
对于整数m, 有 r0, r1, r2, …, rm−2, rm−1 个同余类,且两两模m不同余,这些类的同余类组成的集合叫做完全剩余系
简化剩余系
1.m的完全剩余系中,与m互素的同余类元素,且他们两两不同余,称为模m的简化剩余系
2.简化剩余系中的同余类个数称为欧拉函数
简化剩余系关于模m乘法封闭(所乘的东西都还是在一个体系中未与外界有联系)
证明:若有 a,b(0≤a,b<m),且 GCD(a,m)=GCD(b,m)=1,因为 a,b
与m都无相同因子,故 a*b 与m 也没有相同因子,即他们也互质,所以
a∗b mod m 也属于m的简化剩余系。

带模运算的性质
 (a + b) % p = (a % p + b % p) % p
 (a – b) % p = (a % p – b % p) % p
 (a * b) % p = (a % p * b % p) % p
 (a/b) % p = ((a % p)b) % p
 (a / b) % p ≠ (a % p / b % p) % p
 交换律:
(a + b) % m = (b + a) % m
( a * b) % m = (b * a) % m
 结合律:
((a+b) % p + c) % p = (a + (b+c) % p) % p
((ab) % p * c)% p = (a * (bc) % p) % p
 分配律:
((a +b)% p * c) % p = ((a * c) % p + (b * c) % p) % p

同余式的性质
 自反性:a≡a(% p)
 对称性:a≡b(% p) → b≡a(% p)
 传递性:(a≡b(% p), b≡c(% p)) → a≡c(% p)
 消去律:ac≡bc(% p) → a≡b(% p/GCD(c,p) )
(理解一下:相当于排掉了 两个数共同因数的对p的质数)
 a≡b(% cd) → a≡b(% d)
理解:a,b对一个数同余,那么他们对那个数的因数也同余)
(a≡b(% d),a≡b(% c)) → a≡b(% LCM(c,d))
 若a≡b (% p),则对于任意的c,都有 (a + c) ≡ (b + c) (%p)
 若a≡b (% p),则对于任意的c,都有 (a * c) ≡ (b * c) (%p)
 若a≡b (% p),则对于任意的c,都有 (a的c次方) ≡ (b的c次方) (%p)
(觉得与上面那个模运算类似)
 若a≡b (% p),c≡d (% p),则 (a +c) ≡ (b +d) (%p),(a - c) ≡ (b - d) (%p),(a * c) ≡ (b * d) (%p)
算术运算与同余可以交换次序

例题:余数之和 (BZOJ1257) https://www.acwing.com/problem/content/description/201/

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值