Cod sursa(job #3311976)

Utilizator rapidu36Victor Manz rapidu36 Data 25 septembrie 2025 10:18:08
Problema Invers modular Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <fstream>

using namespace std;

void euclid_e(int a, int b, int &x, int &y, int &d)
{
    if (b == 0)
    {
        d = a;
        x = 1;
        y = 0;
        return;
    }
    int x_, y_, q = a / b;
    euclid_e(b, a % b, x_, y_, d);
    x = y_;
    y = x_ - q * y_;
}

int main()
{
    ifstream in("inversmodular.in");
    ofstream out("inversmodular.out");
    int a, n;
    in >> a >> n;
    int x, y, d;
    euclid_e(a, n, x, y, d);
    x %= n;
    if (x < 0)
    {
        x += n;
    }
    out << x << "\n";
    in.close();
    out.close();
    return 0;
}