求模(mod)运算的应用

2019-04-14 12:10发布

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运算的两个应用。