zhangjinxuan 发表于 2023-9-26 11:25:18

数学问题

本帖最后由 zhangjinxuan 于 2024-4-28 17:00 编辑






所[

s]不周知,逆元主要是用来求解”已知 a mod p, b mod p 的值,求 (a/b) mod p 的值" 的问题。

做一个小改动,问题变成 ”已知 a mod p, b mod p 的值,求 (a mod b) % p 的值" 。

这个有没有解呢。

isdkz 发表于 2023-9-26 11:25:26

有解。



首先,我们知道 a mod p 和 b mod p 的值,可以表示成 a = kp + r1 和 b = mp + r2 的形式,其中 k、m 是整数,r1、r2 是余数,0 <= r1, r2 < p。



那么,我们可以将 a mod b 表示成 a mod b = (kp + r1) mod (mp + r2)。



根据模运算的性质,(kp + r1) mod (mp + r2) = ((kmp + mr1 + kp + r1) mod (mp + r2)) mod b。



因此,我们可以得到 a mod b 的值为 ((kmp + mr1 + kp + r1) mod (mp + r2)) mod p。



我们已知 r1、r2、p 的值,可以通过遍历 k、m 的值,计算出 (kmp + mr1 + kp + r1) mod (mp + r2) 的值,然后再对 p 取模即可得到最终的结果。

zhangjinxuan 发表于 2023-9-26 11:28:02

isdkz 发表于 2023-9-26 11:25
有解。



首先,我们知道 a mod p 和 b mod p 的值,可以表示成 a = kp + r1 和 b = mp + r2 的形式,其 ...

《遍历k,m的值》

这说了就像说了似的{:10_256:}
页: [1]
查看完整版本: 数学问题