Pagini recente » Cod sursa (job #934274) | Cod sursa (job #2529034) | Cod sursa (job #183131) | Cod sursa (job #372621) | Cod sursa (job #1396897)
#include <iostream>
#include<stdio.h>
using namespace std;
FILE *f,*g;
int main()
{
long long a,n,n1,x=1,y=0,u=0,v=1,u1,v1,r,q;
f=fopen("inversmodular.in","r");
g=fopen("inversmodular.out","w");
fscanf(f,"%lld %lld",&a,&n);
n1=n;
while(n!=0)
{
q=a/n;
r=a%n;
u1=x-u*q;
v1=y-v*q;
a=n;
n=r;
x=u;
y=v;
u=u1;
v=v1;
}
if(x<0) x=n1+x%n1;
fprintf(g,"%lld",&x);
fclose(f);
fclose(g);
return 0;
}