51Nod 1256 求乘法逆元--扩展欧几里德

 

#include<stdio.h>
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 t=x;x=y;y=t-(a/b)*y;
    return r;
}
int main(){
    int n,m,x,y;
    while(~scanf("%d%d",&m,&n)){
        exgcd(m,n,x,y);
        while(x<0)
            x+=n;
        printf("%d\n",x);
    }
}

 

相关文章:

  • 2021-08-28
  • 2022-12-23
  • 2021-06-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-12
  • 2021-09-20
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-30
  • 2021-11-16
  • 2022-02-04
  • 2022-12-23
相关资源
相似解决方案