这个东西我一直没理解他算出来的是什么情况 对应的y 能直接用吗??? 到底是不是最小解。。。知道的人告诉我一下 。。。
#include <iostream>
typedef long long LL;using namespace std;
void exgcd(int a, int b, LL &x, LL &y)
{
if(b == 0)
{
x = 1;
y = 0;
return;
}
LL x1, y1;
exgcd(b, a%b, x1, y1);
x = y1;
y = x1-(a/b)*y1;
}
int gcd(int a,int b)
{
if(b==0)return a;
return gcd(b,a%b);
}
int main()
{
int a,b;
while(cin>>a>>b)
{
int c=gcd(a,b);
if(c!=1)cout<<"sorry"<<endl;
else
{
LL x,y;
exgcd(a,b,x,y);
x=(x%b+b)%b;
y=(1-a*x)/b;
cout<<x<<" "<<y<<endl;
}
}
return 0;
}