Cod sursa(job #1612565)

Utilizator AlbertJuniorAlbert Ramona AlbertJunior Data 24 februarie 2016 22:12:58
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <fstream>

using namespace std;

ifstream f("inversmodular.in");
ofstream g("inversmodular.out");

int euclidextins(int a, int b, int &x, int &y);

int a, n, x, y, d;

int main()
{
    f>>a>>n;
    d=euclidextins(a, n, x, y);
    if (x<0)
    while (x<0) x+=n;
    g<<x<<'\n';
    return 0;
}

int euclidextins(int a, int b, int &x, int &y)
{
    int x1, y1;
    if (!b)
    {
        x=1;
        y=0;
        return a;
    }
    else
    {
        euclidextins(b, a%b, x1, y1);
        x=y1;
        y=x1-(a/b)*y1;
    }
}