Jackiesteed

www.github.com/jackiesteed

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年4月18日

摘要: 迭代法求线性联立同余式(POJ_2891, ZOJ_3562)中国剩余定理应该可以,但是x=ai%mi(1<=i<=k),这里的mi没有限制互质,所以不能直接套用中国剩余定理.修改的话外加判断条件,思路不太清晰,后来看Rosen的"数论及其应用",发现联立的同余方程的迭代解法.迭代解法中不需要考虑mi是否互质的情况,最终化简结果就是我们要求的解,中间可能无解时,直接跳出.基本思路类似消元,参照<初等数论及其应用>.附代码:----------------------------------------------------------------- 阅读全文
posted @ 2011-04-18 22:39 Jackiesteed 阅读(628) 评论(0) 推荐(0) 编辑

摘要: 1975年,John M. Pollard提出了第二种因数分解的方法。Pollard rho因数分解方法基于下列几点:(1) 假定有两个整数和使得p可以整除-,但是n不能整除。(2) 可以证明。因为p可以整除-,可以写成。但是,因为n不能整除-,很明显q不能整除n。这就表明既可以是1也可以是n的一个因数。下列算法重复选择和,直到求出一个合适的对。(1) 选择,一个小的随机整数称为种子。(2) 运用函数算出,使得n不能整除。这里所用的一个函数也许就是=(a通常选作1)。(3) 计算。如果它不是1,结果是n的一个因数;如果它是1,返回到步骤1并用重复这个过程。现在我们计算。注意,在下一轮中,我们以 阅读全文
posted @ 2011-04-18 15:24 Jackiesteed 阅读(9619) 评论(1) 推荐(0) 编辑

摘要: PollardRho算法的应用.输入a,b,处理为b/=a.先使用Pollard算法求出b的所有的质因子,求出的信息中包含每个质因子在b中的个数.设结果为x,y,那么b=(x1^p1)*(x2^p2)*(x3^p3)*...,化简为b=X1*X2*X3*...*Xn,其中Xi=xi^pi.(因为x和y是互质的,所以x和y会独占Xi,这是化简的理由.)通过打表可以推出n最大为15.那么,那么位运算一下即可,(O(1<<n))for(i=0;i<=(1<<n);i++){ LL tmp=1; for(int j=0;j<n;j++) {if(i&(1&l 阅读全文
posted @ 2011-04-18 15:05 Jackiesteed 阅读(442) 评论(0) 推荐(0) 编辑