Pagini recente » Cod sursa (job #1765937) | Cod sursa (job #2056008) | Cod sursa (job #245238) | Cod sursa (job #395786) | Cod sursa (job #1333559)
#include <fstream>
using namespace std;
ifstream cin("inversmodular.in");
ofstream cout("inversmodular.out");
int m,n,x,y,d;
void euclid(int a,int b,int *d,int *x,int *y)
{
int x0,y0;
if (!b)
{
*x=1;
*y=0;
*d=a;
}
else
{
euclid(b,a%b,d,&x0,&y0);
*x=y0;
*y=x0-a/b*y0;
}
}
int main()
{
int i,j;
cin>>m>>n;
euclid(m,n,&d,&x,&y);
while (x<0)
x+=n;
cout<<x;
}