同余模运算

模运算

模运算即求余运算:在数学中用符号 mod 表示。模 p 运算的定义如下:
给定一个正整数 p,任意一个整数 n,一定存在等式:n=kp+r(k、r 是整数,且 0<=r < p),称 k 为 n 除以 p 的商,r 为 n 除以 p 的余数,记着:r=n mod p。 

针对模 p 运算,可以数环来理解:一个圆环有 p 米,并标刻度:0,1,…,p-1: 
◆k=n/p:表示一个人在这个环上沿顺时针跑的长总长度 n,k 表 示跑的整圈数; 
◆r=a mod p,r 表示这个人最后停留在 r 点上; 

模算术公式

(a+b) mod p = (a mod p + b mod p) mod p 
(a*b) mod p = ((a mod p) * (b mod p)) mod p 
(a-b) mod p = ((a mod p)-(b mod p) + p) mod p 

在 C++中有求余运算符号’%’,也是求余数功能,但和 mod 有区别,mod 的结果一定是非负数, 而%则不一定,但参与运算的数都是正整数的情况下是等价的。

例如:

a%p=(a mod p + p)mod p 
%的运算规则是:a%b = a-a/b*b 

同余

如果 a 和 b 除以 p 的余数相同,则说 a 和 b 关于模 p 同余,记作: 
 

a≡b(mod p) ÍÎ a mod p = b mod p 

定理:

a≡b(mod n) 的充要条件 a-b=n*y(即 a-b 是 n 的倍数) 

这个定理得证明很简单:

b mod n == (b+y*n) mod n == a mod n 

剩余系

所谓“剩余系”,就是指对于某一个特定的正整数 n,一个整数集中的数模 n 所得的余数域。 

例如 n=10,则整数集:{5,20,14,17,15}的剩余系为{0,4,5,7} 

如果一个剩余系中包含了这个正整数所有可能的余数(一般地,对于任意正整数 n,有 n 个余数: 
0,1,2,…,n-1),那么就被称为是模 n 的一个完全剩余系
。 

在剩余系中,每个元素代表的是一个同余等价类:比如 n=5,则元素 3 代表了 {3,8,13,18,…,3+k*5} 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值