gcd和扩展gcd

//求解ax+my=1 
int exGCD(int a,int b,int &x,int &y)
{
	if(b==0)
	{
		x=1;
		y=0;
		return a;
	}
	int g=exGCD(b,a%b,x,y);
	int tmp=x;
	x=y;
	y=tmp-a/b*y;
	return g;
} 

int gcd(int a,int b)
{
	if(b==0)
		return a;
	return gcd(b,a%b);
}

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
	int a=20,b=12;
	cout << __gcd(a,b);  //algorithm 下的函数 
	return 0;
}

猜你喜欢

转载自blog.csdn.net/smoggyxhdz/article/details/80440662
gcd