数论拓展欧几里得,计算mx+ny=d的一组解(m。n为已知)

int xx=x+n/d*i;

int yy=y-m/d*i;//xx,yy分别为其它通解

void extend_gcd(int a,int b,int &x,int &y,int &d)  
{
if(!b)
{
x=1;
y=0;
d=a;
return;
}
extend_gcd(b,a%b,x,y,d);
int t=x-a/b*y;
x=y;
y=t;
}