算法思想
我们想求得一组(x,y)使得
根据
如果我们现在有(x',y') 使得
那么
移项之后
(ax+by = ay'+b(x'-lfloorfrac a b floor y'))
递归求解,当(b = 0)时候,(x = 1,y = 0);
模板
int exgcd(int a,int b,int &x,int &y)
{
if(b==0)
{
x = 1; y = 0;return a;
}
int x1,y1;
int ans = exgcd(b,a%b,x1,y1);
x = y1;
y = x1-(a/b)*y1;
return ans;
}
例题
https://www.luogu.com.cn/problem/P1082