Pagini recente » Profil PsychoRo | Cod sursa (job #2222469) | Cod sursa (job #2408764) | Cod sursa (job #1544720) | Cod sursa (job #983438)
Cod sursa(job #983438)
#include <stdio.h>
#include <algorithm>
using namespace std;
int A, N;
void read(){
freopen("inversmodular.in", "r", stdin);
scanf("%d", &A);
scanf("%d", &N);
}
void print(int x){
printf("%d", x);
}
void solve(){
int q, r, t0, t1, t2;
if(N < A)
swap(N, A);
q = N / A;
r = N % A;
t0 = 0;
t1 = 1;
t2 = t0 - q*t1;
if(r == 1){
//inseamna ca
print(N-1);
}
else{
while(r != 1){
q = N / A;
r = N % A;
N = A;
A = r;
t2 = t0 - q * t1;
t0 = t1;
t1 = t2;
//print(t2);
}
print(t2);
}
}
int main(){
freopen("inversmodular.out", "w", stdout);
read();
solve();
return 0;
}