Cod sursa(job #2796659)

Utilizator mariaionescu2006Ionescu Maria mariaionescu2006 Data 8 noiembrie 2021 16:57:54
Problema Invers modular Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.45 kb
#include <fstream>

using namespace std;
ifstream cin("inversmodular.in");
ofstream cout("inversmodular.out");
void euclid(int a,int b,int&d,int&x,int&y)
{
    if(b==0)
    {
        d=a;x=1;y=0;
    }
    else
    {
        int x0,y0;
        euclid(b,a%b,d,x0,y0);
        x=y0;
        y=x0-(a/b)*y0;
    }
}
int a,n,d,x,y;
int main()
{
    cin>>a>>n;
    euclid(a,n,d,x,y);
    while(x<0) x+=n;
    cout<<x;
    return 0;
}