Cod sursa(job #2147038)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 28 februarie 2018 13:25:03
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <fstream>

using namespace std;

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

int n, mod;

void euclid(int a, int b, int &x, int &y) {
    if (b == 0) {
        x = 1, y = 0;
        return;
    }
    int xx, yy;
    euclid(b, a%b, xx, yy);
    x = yy;
    y = xx-(a/b)*yy;
}

int inv_mod(int n) {
    int x, y;
    euclid(n,mod,x,y);
    if (x < 0) x += mod;
    return x;
}

int main() {
    f >> n >> mod;
    g << inv_mod(n);
    return 0;
}