GCD笔记:
int gcd(int a,int b)
{
while(b^=a^=b^=a%=b);
return a;
}
int gcd2(int a,int b)
{
return b==0?a:gcd(b,a%b);
}
int gcd3(int a,int b)
{
int tmp;
while(b>0)
{
tmp=a%b;
a=b;
b=tmp;
}
return a;
}
int exgcd(int a,int b,int &x,int &y)
{
if(b==0)
{
x=1;
y=0;
return a;
}
int r=exgcd(b,a%b,x,y);
int temp=y;
y=x-(a/b)*y;
x=temp;
return r;
}