Modular Inverse
Time Limit: 2 Seconds
Memory Limit: 65536 KB
The modular modular multiplicative inverse of an integer a modulo
m is an integer x such that a-1≡x (mod
m). This is equiv...
分类:
编程语言 时间:
2015-03-15 09:30:03
阅读次数:
207
其它好的博客:http://www.cnblogs.com/yefeng1627/archive/2012/12/24/2830594.htmlhttp://www.cnblogs.com/frog112111/archive/2012/08/19/2646012.html#2985941扩展欧几里...
分类:
编程语言 时间:
2015-01-17 22:06:02
阅读次数:
277
题意:
在while(x=a;x!=b;x+=c) statement;中,问statement会被执行多少次,计算在2^k下进行。
思路:
等价于计算同余式a+c*x=b(mod2^k)用扩展欧几里得算法。设g=gcd(a,b)在计算a*x+b*y=g过程中,x的结果可以用b/g调整,y的结果可以用a/g调整,因为a*(b/g)==b*(a/g)。
代码:
//poj 2115
//s...
分类:
其他好文 时间:
2014-12-26 20:23:01
阅读次数:
256
欧几里得算法,即辗转相除法,用于求整数a,b的最大公约数。
欧几里得算法C++实现代码:(无需确定 a,b 大小关系)
long long gcd(long long a,long long b){
return b?gcd(b,a%b):a;
}
扩展欧几里得算法:设a和b不全为0,则存在整数x和y,使得 gcd(a,b) = xa + yb
证明: 假设 a...
分类:
编程语言 时间:
2014-12-02 13:36:53
阅读次数:
193
【题意描述】给定这样一个表达式:X1/X2/X3/·····/Xk,其中Xi是正整数。除法表达式应到按照从左到右的顺序求和。但在表达式中嵌入括号可以改变计算顺序。输入表达式,判断是否可以通过加括号使得表达式最后的值为整数。【分析】表达式可以写成E=(X1·X3·····Xk)/X2;(X1一定在分子...
分类:
编程语言 时间:
2014-11-20 06:45:45
阅读次数:
127
由于今天上午在做数论知识的笔记,发现那时候赵老师讲的线性丢番图(求ax+by=c的特解)部分完全搞不懂,后来网上查了一下才发现这个公式就是求同余方程,所用方法就是扩展欧几里得算法。正好红皮书上有这么一个模板,直接敲了下来然后稍作修改。后来发现POJ上的1061题就是这样一个类型,用了三个小时,荒.....
分类:
其他好文 时间:
2014-11-18 06:52:37
阅读次数:
169
最近的密码学实验,要求模逆,以前都没认真的研究过扩展的欧几里得算法,就趁着这个机会,把扩展的欧几里得算法好好的研究了一番;
扩展的欧几里得算法的应用范围也很广泛:1.可以用来求解不定方程的解。2.可以用来求解模线性方程(线性同余方程)3.求解模的逆元。
由这个名称我们就可以得知,这个算法是对欧几里得算法的扩展,欧几里得算法是求两个数的最大公约数,而扩展的算法就是对上面式子的x,y进行求解。
...
分类:
编程语言 时间:
2014-11-15 17:11:35
阅读次数:
225
中国剩余定理的非互质形式任意n个表达式一对对处理,故只需处理两个表达式。x = a(mod m)x = b(mod n)km+a = b (mod n)km = (a-b)(mod n)利用扩展欧几里得算法求出kk = k0(mod n/(n,m)) = k0 + h*n/(n,m)x = km+a...
分类:
其他好文 时间:
2014-11-14 06:54:38
阅读次数:
146
一、欧几里得算法名字非常高大上的不一定难,比如欧几里得算法。。。其实就是求两个正整数a, b的最大公约数(即gcd),亦称辗转相除法需要先知道一个定理:gcd(a, b) = gcd(b, amod b) (其中a mod b != 0) 或 b (其中a mod b == 0)证明:后半部分呢。。...
分类:
编程语言 时间:
2014-11-07 18:32:29
阅读次数:
215
欧几里得算法基于这样一个 GCD 递归定理:$gcd(a, b) = gcd(b, a\bmod{b}) $证明如下:假设 $a > b$, $a = kb + r(0 0$ 时, 假设我们已经求得了方程 $bx + (a\bmod{b})y = gcd(b, a\bmod{b})$ 的一组解 $....
分类:
编程语言 时间:
2014-10-31 15:22:41
阅读次数:
279