Cod sursa(job #2950652)
Utilizator | Data | 4 decembrie 2022 13:43:27 | |
---|---|---|---|
Problema | Invers modular | Scor | 50 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("inversmodular.in");
ofstream g("inversmodular.out");
void EuclidExtins(int A, int B, int D, int &X, int &Y)
{
if (B == 0)
{
X = 1;
Y = 0;
D = A;
}
else {
int X0, Y0;
EuclidExtins(B, A % B, D, X0, Y0);
X = Y0;
Y = X0 - (A / B) * Y0;
}
}
int main()
{
int a, n, d, x, y;
f >> a >> n;
EuclidExtins(a, n, d, x, y);
g << x;
return 0;
}