Pagini recente » Cod sursa (job #2843739) | Cod sursa (job #1428968) | Cod sursa (job #760038) | Cod sursa (job #1385166) | Cod sursa (job #3252731)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
long long int N, A, X, Y;
void euclid(int a, int b, int &x, int &y){
if(b==0) x=y=1;
else{
int x1, y1;
euclid(b, a%b, x1, y1);
x=y1;
y=x1-a/b*y1;
}
}
int invMod(int a, int n){
int x, y;
euclid(a, n, x, y);
while(x<0) x+=n;
return x;
}
int main(){
fin>>A>>N;
fout<<invMod(A, N);
return 0;
}