Pagini recente » Cod sursa (job #1210581) | Cod sursa (job #1973727) | Cod sursa (job #3213491) | Cod sursa (job #1171554) | Cod sursa (job #1206251)
#include<cstdio>
using namespace std;
int n,d,a,x,y;
int cmmdc(int A, int B, int &X, int &Y)
{
if (B==0)
{
X=1, Y=0;
return A;
}
else
{
int Xa,Ya,D=cmmdc(B,A%B,Xa,Ya);
X=Ya;
Y=Xa-(A/B)*Ya;
return D;
}
}
int main()
{
freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);
scanf("%d%d",&a,&n);
d=cmmdc(a,n,x,y);
x%=n;
if (x<0) x+=n;
printf("%d\n",x);
return 0;
}