Pagini recente » Cod sursa (job #53813) | Cod sursa (job #2389670) | Cod sursa (job #2934217) | Cod sursa (job #2469850) | Cod sursa (job #470791)
Cod sursa(job #470791)
#include <iostream>
#include <fstream>
using namespace std ;
const int MODULO = 100000 ;
long long A , N ;
long long ridicarePutere ( long long A , long long n )
{
long long f = 1 ;
while ( n )
{
if ( n % 2 == 1)
f *= A ;
A *= A ;
A %= N ;
f %= N ;
n /= 2 ;
}
return f ;
}
int main ( )
{
freopen ( "inversmodular.in","r",stdin) ;
freopen ( "inversmodular.out","w",stdout) ;
cin >> A >> N ;
cout << ridicarePutere ( A , N - 2 ) ;
return 0 ;
}