Pagini recente » Cod sursa (job #1582902) | Cod sursa (job #1948188) | Cod sursa (job #1513395) | Cod sursa (job #2191659) | Cod sursa (job #1653522)
#include <fstream>
using namespace std;
FILE * fin = fopen("inversmodular.in", "r");
FILE * fout = fopen("inversmodular.out", "w");
void euclide(int a, int b, int& d, int&x, int& y);
int main()
{
int a, n, d, x, y;
fscanf(fin, "%d %d", &a, &n);
euclide(a, n, d, x, y);
fprintf(fout, "%d\n", x);
fclose(fin);
fclose(fout);
return 0;
}
void euclide(int a, int b, int& d, int&x, int& y)
{
if (b==0)
{
d=a;
x=1;
y=0;
return;
}
int x0, y0;
euclide(b, a%b, d, x0, y0);
x=y0;
y=x0-a/b*y0;
}