Pagini recente » Cod sursa (job #837144) | Cod sursa (job #2035473) | Cod sursa (job #1123297) | Cod sursa (job #1201155) | Cod sursa (job #1477414)
#include <cstdio>
#define ll long long
using namespace std;
ll A, B, C, D, X, Y;
void GCD(ll A, ll B, ll &X, ll &Y, ll &D){
if(B == 0){
X = 1;
Y = 0;
D = A;
} else {
ll X0, Y0;
GCD(B, A % B, X0, Y0, D);
X = Y0;
Y = X0 - (A / B) * Y0;
} return;
}
int main(){
freopen("inversmodular.in" ,"r", stdin );
freopen("inversmodular.out","w", stdout);
scanf("%lld %lld", &A, &B);
GCD(A, B, X, Y, D);
printf("%lld\n", X);
fclose(stdin );
fclose(stdout);
return 0;
}