Pagini recente » Cod sursa (job #2503067) | Cod sursa (job #2122264) | Cod sursa (job #2188780) | Cod sursa (job #1851232) | Cod sursa (job #2042308)
#include <iostream>
#include <cstdio>
using namespace std;
int x, y, d;
pair <int, int> euclid(int x, int y)
{
if(!y)
{
d = x;
return {1,0};
}
auto p = euclid(y, x % y);
return {p.second, p.first - ( x / y ) * p.second};
}
void solve()
{
scanf("%d %d\n", &x, &y);
pair <int, int> p = euclid(x,y);
while(p.first <= 0)
{
p.first += y;
}
printf("%d", p.first);
}
int main()
{
freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);
solve();
return 0;
}