//求一个最小的正整数x,使a乘以x对m的取余等于1对m的取余
//注意的是 当b==1的时候 要特殊的判断一下。
#include<stdio.h>
int ext_gcd(int &x,int &y,int a,int b)
{
int d;
if(b==0)
{
x=1;
y=0;
return a;
}
else
{
d=ext_gcd(x,y,b,a%b);
int t=x;
x=y;
y=t-a/b*y;
}
return d;
}
int main()
{
int T;
int a,b,x,y;
scanf("%d",&T);
for(int i=0; i<T; i++)
{
scanf("%d%d",&a,&b);
if(ext_gcd(x,y,a,b)==1)
printf("%d\n",(x+b)%b+(b==1));
else
printf("Not Exist\n");
}
return 0;
}
zoj3609
最新推荐文章于 2019-04-03 19:06:54 发布