Cod sursa(job #2872407)

Utilizator dulap16Berechet Tudor dulap16 Data 16 martie 2022 22:09:16
Problema Invers modular Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.55 kb
#include <iostream>
#include <fstream>

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

void invModular(long long &inv, long long &ins, int a, int b)
{
    if(!b)
        inv = 1, ins = 0;
    else {
        invModular(inv, ins, b, a % b);
        int aux = inv;
        inv = ins;
        ins = aux - ins * (a / b);
    }
}

int a, n;

int main()
{
    f>>a>>n;
    long long ins = 0, inv = 0;

    invModular(ins, inv, a, n);

    if(inv < 0)
        inv = n + inv % n;


    g<<inv;
}