求模(mod)运算的应用
来源:互联网 发布:汉王pdf识别软件 编辑:程序博客网 时间:2024/05/21 17:25
1、mod运算的性质
结合律
((a+b) mod p + c)mod p = (a + (b+c) mod p) mod p
((a*b) mod p * c)mod p = (a * (b*c) mod p) mod p
交换律
(a + b) mod p = (b+a) mod p
(a × b) mod p = (b × a) mod p
分配律
((a +b)mod p × c) mod p = ((a × c) mod p + (b × c) mod p) mod p
(a×b) mod c=(a mod c * b mod c) mod c
(a+b) mod c=(a mod c+ b mod c) mod c
(a-b) mod c=(a mod c- b mod c) mod c
mod运算通俗说是求余。a对b求余的结果余数一定小于b。所以上面的一些定律你就会明白为什么要多加mod符号,就是因为只要外层有一个mod,展开时也必须保证整体的结果小于模数。
2.mod运算的应用
例一:判断能否整除
i%n==0,那么i能够被n整除。
关于整除,详解一下我们之前判断被n整除的方法的由来。
被2整除:
判断方法:偶数
被3整除:
判断方法:i的每位和能够整除3
被6整除:
判断方法:先判断能被2整除,再判断能否被3整除
被8整除:
判断方法:判断后三位是否能够整除8
证明方法如下:
看来以前的数学公式或者规则都很有用,当论证过后能够记得更清吧。
第二个应用:
在博弈论中也有所应用,如甲乙两个人玩游戏,共有14个棋子,谁最后取完谁赢。每次只可取1-3个棋子,不可不取。那么如果甲先取,该如何取才能够必胜?
其实博弈论一定要想好终态,也即最后是怎样赢的。所以这套赢的规律你要清楚,如本题答案:
甲第一把:14%4=2
之后若乙取x,那么甲取4-x。如此能够保证甲必胜。
总的来说,mod运算其实也并没有专属的算法。mod运算只是一个运算,上面所说的两个例子是mod运算的两个应用。
0 0
- 求模(mod)运算的应用
- 求 a^b mod mod 的模板
- 取模运算(mod)和求余(rem)运算不能被混为一谈
- 多项式mod的运算方法
- 1600: Big Mod mod运算的性质, a^n合同与a模m的积
- 不用/,*,mod乘、除、取模运算的除法
- 求模运算符的应用(植树问题)
- Mod(求模或求余)
- MOD 运算
- mod运算
- hdu1576 mod 运算的逆元
- 求一个整数的位数--除法运算符的应用
- 邝斌的ACM模板(求 A^B 的约数之和对 MOD 取模)
- numpy的求模模块 linalg在范数运算中的应用
- 取模MOD和求余REM……JAVA的%原来只是REM
- 取模MOD和求余REM……JAVA的%原来只是REM
- 逆序输出--求余运算符的应用
- 关于MOD运算
- android studio新建项目,编译项目卡死的问题
- Rextrofit中网络请求空字段传递或过滤
- LDAP服务搭建
- iOS使用NSMutableAttributedString 实现富文本(不同颜色字体、下划线等)
- 图像分割之(一)概述
- 求模(mod)运算的应用
- cargo maven部署至远程tomcat
- 【规则引擎连载7】 WebSphere ILOG JRules 开发——BOM更新
- EXTJS-GridPanel双击行 事件
- 设计移动App的十大技巧
- 黑马程序员:Python时代已到来!此时不学更待何时?
- C++中的类与对象
- 微软的那些区块链云服务
- 线段树区间更新--hdu3577