0

我正在尝试找到表达式的模数。我所知道的是

(a+b) mod N = ((a mod N) + (b mod N)) mod N

如何使用它来简化以下模运算?

(a - 2*b + 1) mod N

必须有某种方法来简化它,将其视为

(a - b - b + 1) mod N ?

编辑:

我也偶然发现了以下财产:

ab mod N = ((a mod N) (b mod N)) mod N

这会有所帮助吗?

4

2 回答 2

1

(b*-2 + a + 1) % n不幸的是,没有办法简化。

于 2013-10-08T19:28:32.827 回答
1

如果:(a+b) mod N = ((a mod N) + (b mod N)) mod N

然后:

(a - 2*b + 1) mod N = ((a mod N) - (b mod N) - (b mod N) + (1 mod N)) mod N

如果 a 和 b 值较大,N 值较小,则更简单。

例如:a=85773, b = 77733340, N=5: 你宁愿解决哪个

(85773 - 77733340 - 77733340 + 1) mod 5

或者

((85773 mod 5) - (77733340 mod 5) - (77733340 mod 5) + (1 mod 5)) mod 5

我得到的第二个(3 - 0 - 0 + 1) % 5 = 4

于 2013-10-08T19:52:06.413 回答