关于 模(Mod)运算

模(Mod)

原文地址

定义

Mod 的含义是 取余

打个比方:

\[\begin{matrix} (3+4)\bmod 4 = 3 \\ 3\times 4\bmod 3 = 0 \\ \end{matrix} \]

性质

\[(A+B)\bmod p = (A \bmod p + B \bmod p) \bmod p \]

因为 \((A \bmod p + B \bmod p)\) 可能大于 \(p\)
所以需要再模上 \(p\)

\[(A-B)\bmod p = (A \bmod p - B \bmod p + p) \bmod p \]

由于 \((A \bmod p - B \bmod p)\) 可能为负数
所以需要加上 \(p\) 再进行模运算
如果不是负数,因为 \(p \bmod p = 0\) , 所以也不会有影响

\[(A\times B)\bmod p = (A \bmod p \times B \bmod p ) \bmod p \]

原理同加法

注意:\(\frac{A}{B}\bmod p\ne \frac{A \bmod p}{B \bmod p } \bmod p\)
正确性质如下:

\[\frac{A}{B}\bmod p = (A \bmod p \times B^{-1} \bmod p ) \bmod p \]

原理就是将除法转化为乘法,(\(B^{-1}\)\(B\)的倒数)
其中 \(B^{-1}\) 也被称作 \(B\) 的乘法逆元
求逆元可以参考这篇 blog 求逆元的四种方法
注意:逆元不一定是倒数,是一个整数(因为有取余运算)

总结

\[\begin{matrix} (A+B)\bmod p = (A \bmod p + B \bmod p) \bmod p \\ (A-B)\bmod p = (A \bmod p - B \bmod p + p) \bmod p \\ (A\times B)\bmod p = (A \bmod p \times B \bmod p ) \bmod p\\ \dfrac{A}{B}\bmod p = (A \bmod p \times B^{-1} \bmod p ) \bmod p \end{matrix} \]



posted @ 2023-01-21 10:58  Mingrui_Yang  阅读(249)  评论(0编辑  收藏  举报