Cod sursa(job #1163513)

Utilizator bogdanboboc97Bogdan Boboc bogdanboboc97 Data 1 aprilie 2014 13:52:46
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include <fstream>

using namespace std;

ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");

int a,n;

void gcd(long long &x,long long &y,int a,int b)
{
    if(b==0)
        x=1,y=0;
    else
    {
        gcd(x,y,b,a%b);
        long long aux=x;
        x=y;
        y=aux-y*(a/b);
    }
}

int main()
{
    long long inv=0, ins;
    fin>>a>>n;
    gcd(inv, ins,a,n);
    if(inv<=0)inv=n+inv%n;
    fout<<inv;
    return 0;
}