Pagini recente » Cod sursa (job #254004) | Cod sursa (job #1380771) | Cod sursa (job #846262) | Cod sursa (job #673203) | Cod sursa (job #2773312)
#include <fstream>
using namespace std;
ifstream cin ("inversmodular.in");
ofstream cout ("inversmodular.out");
void gcd(long long &x, long long &y, int a, int b)
{
if (!b)
x = 1, y = 0;
else
{
gcd(x, y, b, a % b);
long long aux = x;
x = y;
y = aux - y * (a / b);
}
}
int main()
{
long long x = 0, y;
int a,n;
cin>>a>>n;
gcd(x, y, a, n);
if (x <= 0)
{
x = n + x % n;
}
cout<<x;
return 0;
}