Cod sursa(job #2135701)
Utilizator | Data | 19 februarie 2018 07:43:53 | |
---|---|---|---|
Problema | Invers modular | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include <bits/stdc++.h>
using namespace std;
long long LGpower(int x , int n)
{
long long p = 1;
while(n)
{
if( n & 1)
{
p *= x;
n--;
}
x *= x;
n >>= 1;
}
return p;
}
int main()
{
freopen("inversmodular.in", "r" ,stdin);
freopen("inversmodular.out" , "w" , stdout);
int A,N;
scanf("%d%d" , &A , &N);
long long Power = LGpower(A,N-2);
long long Answer = Power%N;
printf("%d" , Answer);
}