這題之前好像有做過,管他的反正數學作法也忘的差不多了,剛好複習一下。

以下 "=" 暫時是 同餘 符號。

-> (a + c*x) = b (% 2^k)

-> c*x = b-a (%2^k)

最後轉變成 -> c*x - y*(2^k) = b-a (這裡 "=" 變回 等於 了)

就可以用 擴展gcd 求出 x, y 解。

不過 x 有可能求出來 <0 ,所以要把他轉回 >0。

我的code

http://codepad.org/J23EO7Sa

文章標籤
創作者介紹

jghs1328

jghs1328 發表在 痞客邦 PIXNET 留言(0) 人氣()