Pagini recente » Cod sursa (job #2178447) | Cod sursa (job #1964052) | Cod sursa (job #1852858) | Cod sursa (job #3121641) | Cod sursa (job #1708755)
#include <cstdio>
using namespace std;
int gcd(int a, int b, int &x, int &y) {
if (!b) {
x = 1;
y = 0;
return a;
}
int x0, y0, d = gcd(b, a % b, x0, y0);
x = y0;
y = x0 - (a/b) * y0;
return d;
}
int invers(int A, int N) {
int inv, x;
gcd(A, N, inv, x);
while (inv < 0) inv += N;
}
int main() {
freopen("inversmodular.in", "r", stdin );
freopen("inversmodular.out", "w", stdout);
int A, N;
scanf("%d%d", &A, &N);
printf("%d\n", invers(A, N));
return 0;
}