Pagini recente » Monitorul de evaluare | Cod sursa (job #2288896) | Cod sursa (job #2859579) | Cod sursa (job #147722) | Cod sursa (job #1892624)
#include <cstdio>
using namespace std;
void euclidex(long long int a,long long int b,long long int &k,long long int &l,long long int &d)
{
if (b==0)
{
l=1;
k=0;
d=a;
return;
}
long long 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);
long long int a,b,d,l,k;
scanf("%lld %lld \n",&a, &b);
euclidex(a,b,l,k,d);
printf("%lld\n",k);
return 0;
}