Pagini recente » Cod sursa (job #340498) | Cod sursa (job #652820) | Cod sursa (job #138336) | Cod sursa (job #1697280) | Cod sursa (job #228581)
Cod sursa(job #228581)
#include <cstdio>
int A, N;
void euclid_extins(long long &x, long long &y, int a, int b)
{
if (!b) x=1,y=0;
else
{
euclid_extins(x,y,b,a%b);
long long aux=x;
x=y;
y=aux-y*(a/b);
}
}
int main()
{
freopen("inversmodular.in", "r", stdin);
freopen("inversmodular.out", "w", stdout);
long long a=0,b;
scanf("%d %d", &A, &N);
euclid_extins(a,b,A,N);
if (a<=0) a=N+a%N;
printf("%lld\n", a);
return 0;
}