Pagini recente » Cod sursa (job #1338056) | Cod sursa (job #2141444) | Cod sursa (job #1471844) | algoritmiada-2019/runda-preoji/clasament | Cod sursa (job #2021449)
#include <cstdio>
using namespace std;
int n, a, b, c, l, k, d;
void euclidex(int a, int b, int &k, int &l, int &d)
{
if(b==0)
{
l=1;
k=0;
d=a;
return;
}
int k1, l1, d1;
euclidex(b, a%b, k1, l1, d1);
l=k1;
k=l1-(a/b)*k1;
d=d1;
}
int main()
{
freopen("inversmodular.in", "r", stdin);
freopen("inversmodular.out", "w", stdout);
scanf("%d %d", &a, &n);
euclidex(a, n, k, l, d);
if(l>0)
printf("%d", l);
else
{
while(l<0)
l+=b;
printf("%d", l);
}
return 0;
}