给定N = A%B,如何找到A%C的值,其中B> C。 您被赋予N和C的值,但不是A的值。
有没有办法找到这个?
答案 0 :(得分:7)
不。请考虑以下事项:
A = 19
B = 10
C = 7
==> Given 9, you should get 5.
A = 29
B = 10
C = 7
==> Given 9, you should get 1.
所以给定相同的输入,可能有多个答案。
答案 1 :(得分:1)
模运算是单向的:给定 a mod b = n ,我只能说 a 来自所有其他整数的集合,模数 b ,等于 n 。
让我们证明这一般是不可能的,取B = 3,C = 2。
也就是说,如果 b = 3 且 n = 1 ,则必须在不知道的情况下获得两个不同的答案一个
但是,您可能会认为这是一个特殊情况, b 和 c 这里是互质的,实际上它们都是素数。在某些情况下,您当然可以轻松解决此问题,例如 b = 4 和 c = 2 。
BTW,对此的进一步讨论可能更适合mathoverflow