Pagini recente » Cod sursa (job #1485530) | Cod sursa (job #927668) | Cod sursa (job #2761616) | Cod sursa (job #2805277) | Cod sursa (job #1675096)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
long long a,n,inv,ins;
void invers(long long &x, long long &y, long long a, long long b)
{
long long aux;
if(b==0)
{
x=1; y=0;
}
else
{
invers(x,y,b,a%b);
aux=x;
x=y;
y=aux-y*(a/b);
}
}
int main()
{
fin>>a>>n;
invers(inv,ins,a,n);
if(inv<=0) inv=n+inv%n;
fout<<inv;
return 0;
}