Mai intai trebuie sa te autentifici.
Cod sursa(job #1551898)
Utilizator | Data | 16 decembrie 2015 20:48:01 | |
---|---|---|---|
Problema | Invers modular | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <iostream>
#include <cstdio>
using namespace std;
int n, a, k, l, ok=0, r, ln, kn;
void euclid(int a, int b)
{
if(b && !ok) euclid(b, a%b);
if(!b)
{
ok=1;
k=1;
l=0;
}
if(b && ok)
{
ln=k-l*(a/b);
kn=l;
l=ln;
k=kn;
}
}
int main()
{
freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);
scanf("%d %d", &a, &n);
euclid(a, n);
printf("%d", k);
return 0;
}