码迷,mamicode.com
首页 > 编程语言 > 详细

二次剩余 Cipolla算法

时间:2018-10-04 09:28:38      阅读:434      评论:0      收藏:0      [点我收藏+]

标签:ipo   mod   等价   inline   欧拉   因此   poll   rac   lin   

欧拉准则

\(a\)\(p\)的二次剩余等价于\(a^{\frac{p-1}{2}}\equiv 1\pmod p\)\(a\)不是\(p\)的二次剩余等价于\(a^{\frac{p-1}{2}}\equiv -1\pmod p\)

Cipolla

\(a^2-n\)不是\(p\)的二次剩余,则\(p\)的二次剩余为\((a+\sqrt{a^2-n})^\frac{p+1}{2}\)

因此我们随机\(a\)即可。\(\sqrt{a^2-n}\)的计算用复数。

时间复杂度约为\(O(\log^2p)\)

二次剩余 Cipolla算法

标签:ipo   mod   等价   inline   欧拉   因此   poll   rac   lin   

原文地址:https://www.cnblogs.com/utopia999/p/9741050.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!