gcd就是最大公约数,可以用辗转相除法来求
gcd的使用
int gcd(int a,int b) { if(b==0) return a; else return gcd(b,a%b); }
扩展欧几里得算法:代码如下
int exgcd(int a,int b,int &x,int &y) { if(!b)
{
x=1,y=0;
return a;
} int x1,y1; int g=exgcd(b,a%b,x1,y1); x=y1;y=x1-a/b*y1; return g; }
gcd就是最大公约数,可以用辗转相除法来求
gcd的使用
int gcd(int a,int b) { if(b==0) return a; else return gcd(b,a%b); }
扩展欧几里得算法:代码如下
int exgcd(int a,int b,int &x,int &y) { if(!b)
{
x=1,y=0;
return a;
} int x1,y1; int g=exgcd(b,a%b,x1,y1); x=y1;y=x1-a/b*y1; return g; }