欧几里德算法:求最大公因数
int _euclid(int x,int y)
{
if(y==0)return x;
else return _euclid(y,x%y);
}
======================================================================================================================================
扩展欧几里德算法:求解一组整数x,y,使得a*x+b*y = Gcd(a,b)
int _gcd(int a,int b,int &x,int &y)
{
if(b==0)
{
x=1;y=0;return a;
}
int r=_gcd(b,a%b,y,x);
y-=a/b*x;
return r;
}
//r为最大公因数,x y的值根据需要自行调整
======================================================================================================================================