Pagini recente » Cod sursa (job #149428) | Cod sursa (job #656756) | Cod sursa (job #1343737) | Cod sursa (job #2798160) | Cod sursa (job #2254610)
#include <iostream>
#include <fstream>
#include <stdlib.h>
std::ifstream in("inversmodular.in");
std::ofstream out("inversmodular.out");
using namespace std;
long long euclid(long long a,long long b, long long &x, long long &y)
{
if(b==0)
{
x=1;
y=0;
return a;
}
long long d,x0,y0;
d=euclid(b,a%b,x0,y0);
x=y0;
y=x0-(a/b)*y0;
return d;
}
long long n,p,a,b,x,y,d;
int main()
{
in>>n>>p;
d=euclid(n,p,x,y);
out<<abs(x);
return 0;
}