混沌状态下想到的一条式子

a % k = (a * d) % (k * d) / d

证明:(两步搞掂)

要证 a % k = (a * d) % (k * d) / d

只要证 a % k * d= (a * d) % (k * d)

而上式是显然的:

可以设 a = k * t + m

两边乘d有 a * d = k * d * t + m * d

于是有 (a * d) % (k * d) = m * d = a % k * d

证毕

这个式子有啥用?

可以用来计算 a^n / d % k

先把它转化为 (a^n / d * d) % (d * k) / d = a^n % (d * k) / d

然后快速幂解决

posted @ 2009-04-13 02:13  Beetlebum  阅读(248)  评论(1编辑  收藏  举报