Nu aveti permisiuni pentru a descarca fisierul grader_test13.in
Cod sursa(job #228570)
Utilizator | Data | 7 decembrie 2008 15:11:14 | |
---|---|---|---|
Problema | Invers modular | Scor | 0 |
Compilator | c | Status | done |
Runda | Arhiva educationala | Marime | 0.68 kb |
#include <stdio.h>
#define ll long long
int A, N,x,mod;
ll putere(ll a, ll b)
{
if (b==1) return a;
else
if (b%2==0)
{
x=putere(a,b/2);
return x*x;
}
else
{
x=putere(a,b/2);
return x*x*a;
}
}
int main()
{
freopen("inversmodular.in", "r", stdin);
freopen("inversmodular.out", "w", stdout);
scanf("%d %d", &A, &N);
mod=N;
printf("%lld\n", putere(A,N-2)%mod);
return 0;
}