Pagini recente » Cod sursa (job #760091) | Cod sursa (job #1806375) | preONI 2008 - Runda 2, Clasele 11-12 | Cod sursa (job #1243344) | Cod sursa (job #2436852)
#include <fstream>
using namespace std;
ifstream cin("inversmodular.in");
ofstream cout("inversmodular.out");
unsigned long long m,a;
unsigned long long pau(unsigned long long n,unsigned long long p)
{
long long h=1;
n=n%m;
while(p)
{
if(p%2==1) h=(h*n)%m;
n=(n*n)%m;
p=p/2;
}
return h;
}
int main()
{
cin>>a>>m;
int p=m-2;
cout<<pau(a,p);
return 0;
}