Pagini recente » Cod sursa (job #1771951) | Cod sursa (job #1070436) | Cod sursa (job #1459009) | Cod sursa (job #3188216) | Cod sursa (job #948413)
Cod sursa(job #948413)
#include<fstream>
using namespace std ;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
int a, n ;
int mod ;
int putere(int a, int n)
{
if( n == 0 )
return 1 ;
if( n == 1 )
return a % mod ;
if( n % 2 == 0 )
return ( ( putere( a, n / 2 ) % mod ) * ( putere( a, n / 2 ) % mod ) ) % mod ;
else
return ( ( putere( a, n / 2 + 1 ) % mod ) * ( putere( a, n / 2 ) % mod ) ) % mod ;
}
int main()
{
fin >> a >> n ;
mod = n ;
fout << putere( a, n - 2 ) ;
return 0 ;
}