Pagini recente » Cod sursa (job #821228) | Cod sursa (job #2366607) | Cod sursa (job #2829373) | Cod sursa (job #621497) | Cod sursa (job #2838228)
#include <fstream>
using namespace std;
ifstream fin("inversmodular.in");
ofstream fout("inversmodular.out");
int A, N;
long long fastpow(int n, int p)
{
int b = n;
int ans = 1;
for(int i = 0; (1 << i) <= p; i ++)
{
if((1 << i) & p)
ans =(1LL * ans * b) % N;
b =(1LL * b * b) % N;
}
return ans;
}
int main()
{
fin >> A >> N;
fout << fastpow(A, N - 2);
return 0;
}