Module(取模运算)

定义

给定一个正整数 p p p,任意一个整数 n n n,一定存在等式: n = k p + r n = kp + r n=kp+r

其中 k 、 r k、r kr 是整数,且 0 ≤ r < p 0 \leq r < p 0r<p,则称 k k k n n n 除以 p p p 的商, r r r n n n 除以 p p p 的余数

对于正整数 p p p 和整数 a , b a,b a,b,定义如下运算:

取模运算: a % p a \% p a%p(或 a m o d   p a mod~ p amod p),表示 a a a除以 p p p的余数

p p p加法:其结果是 a + b a+b a+b算术和除以 p p p的余数

p p p减法:其结果是 a − b a-b ab算术差除以 p p p的余数

p p p乘法:其结果是 a ∗ b a * b ab算术乘法除以 p p p的余数

p p p除法:除法的取模需要求逆元(见另外章节的详细介绍)

说明:

  • 同余式:正整数 a , b a,b a,b p p p取模,它们的余数相同,记做 a ≡ b ( m o d   p ) a ≡ b (mod ~p) ab(mod p)

  • n % p n \% p n%p 得到结果的正负由被除数 n n n决定,与 p p p无关。例如: 7 % 4 = 3 7\%4 = 3 7%4=3 − 7 % 4 = − 3 -7\%4 = -3 7%4=3 7 % − 4 = 3 7\%-4 = 3 7%4=3 − 7 % − 4 = − 3 -7\%-4 = -3 7%4=3

基本性质

p ∣ ( a − b ) p|(a-b) p(ab),则 a ≡ b ( % p ) a≡b (\% p) ab(%p)。例如 11 ≡ 4 ( % 7 ) 11 ≡ 4 (\% 7) 114(%7) 18 ≡ 4 ( % 7 ) 18 ≡ 4(\% 7) 184(%7)

( a % p ) = ( b % p ) (a \% p)=(b \% p) (a%p)=(b%p)意味 a ≡ b ( % p ) a≡b (\% p) ab(%p)

对称性: a ≡ b ( % p ) a≡b (\% p) ab(%p)等价于$b≡a (% p) $

传递性:若 a ≡ b ( % p ) a≡b (\% p) ab(%p) b ≡ c ( % p ) b≡c (\% p) bc(%p) ,则 a ≡ c ( % p ) a≡c (\% p) ac(%p)

运算规则

模运算与基本四则运算:

( 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 + p ) % p (a - b) \% p = (a \% p - b \% p + p) \% p (ab)%p=(a%pb%p+p)%p //后面加p是为了防止出现负数

( a ∗ b ) % p = ( a % p ∗ b % p ) % p (a * b) \% p = (a \% p * b \% p) \% p (ab)%p=(a%pb%p)%p

a b % p = ( ( a % p ) b ) % p a ^ b \% p = ((a \% p) ^b) \% p ab%p=((a%p)b)%p

结合律:

( ( a + b ) % p + c ) % p = ( a + ( b + c ) % p ) % p ((a+b) \% p + c) \% p = (a + (b+c) \% p) \% p ((a+b)%p+c)%p=(a+(b+c)%p)%p

( ( a ∗ b ) % p ∗ c ) % p = ( a ∗ ( b ∗ c ) % p ) % p ((a*b) \% p * c)\% p = (a * (b*c) \% p) \% p ((ab)%pc)%p=(a(bc)%p)%p

交换律:

( a + b ) % p = ( b + a ) % p (a + b) \% p = (b+a) \% p (a+b)%p=(b+a)%p

( a ∗ b ) % p = ( b ∗ a ) % p (a * b) \% p = (b * a) \% p (ab)%p=(ba)%p

分配律:

( 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 ∗ c ) % p = ( ( a ∗ c ) % p + ( b ∗ c ) % p ) % p ((a +b)\% p * c) \% p = ((a * c) \% p + (b * c) \% p) \% p ((a+b)%pc)%p=((ac)%p+(bc)%p)%p

重要定理

a ≡ b ( % p ) a≡b (\% p) ab(%p),则对于任意的 c c c,都有 ( a + c ) ≡ ( b + c ) ( % p ) (a + c) ≡ (b + c) (\%p) (a+c)(b+c)(%p)

a ≡ b ( % p ) a≡b (\% p) ab(%p),则对于任意的 c c c,都有 ( a ∗ c ) ≡ ( b ∗ c ) ( % p ) (a * c) ≡ (b * c) (\%p) (ac)(bc)(%p)

a ≡ b ( % p ) a≡b (\% p) ab(%p) c ≡ d ( % p ) c≡d (\% p) cd(%p),则 ( a + c ) ≡ ( b + d ) ( % p ) (a + c) ≡ (b + d) (\%p) (a+c)(b+d)(%p) ( a − c ) ≡ ( b − d ) ( % p ) (a - c) ≡ (b - d) (\%p) (ac)(bd)(%p) ( a ∗ c ) ≡ ( b ∗ d ) ( % p ) (a * c) ≡ (b * d) (\%p) (ac)(bd)(%p)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值