定义1.7
.
记,对a,b使用欧几里得定理得:
.
.
拉梅定理:用欧几里得算法计算两个正整数的驻地啊公因子时, 所需的除法次数不会超过连个整数中较小的那个十进制数的5倍
·
拉梅定理推论:求两个正整数a,b(a>b)的最大公因子需要O(log2a3)次运算
·
拓展欧几里得推论:如果gcd(a,b) = 1, 那么a,b互素
// xm+yn=gcd(m,n)
long long exgcd(long long m, long long &x, long long n, long long &y)
{
long long x1, y1, x0, y0;
x0 = 1, y0 = 0;
x1 = 0, y1 = 1;
long long r = (m % n + n) % n;
long long q = (m - r) / n;
while(r)
{
x = x0 - q * x1; y = y0 - q * y1;
x0 = x1; y0 = y1;
x1 = x; y1 = y;
m = n; n = r; r = m % n;
q = (m - r) / n;
}
return n;
}
下文上超链接