
模运算
模运算为 a 除以 m 的余数,记为 a mod m = a % m
取模操作满足如下性质
操作 |
性质 |
加 |
(a + b) % m= ((a % m) + (b % m)) % m |
减 |
(a - b) % m= ((a % m) - (b % m)) % m |
乘 |
(a * b) % m= ((a % m) * (b % m)) % m |
快速幂
对于幂运算 an ,如果一个个的乘,时间复杂度为 O(n),如果用快速幂计算时间复杂度为 O(log2n)
快速幂的解法用了分治的思想,即先计算a2,再计算(a2)2,一直计算到an