Cod sursa(job #1257888)
Utilizator | Data | 8 noiembrie 2014 12:05:20 | |
---|---|---|---|
Problema | Invers modular | Scor | 0 |
Compilator | cpp | Status | done |
Runda | cls6ichbsim1 | Marime | 0.39 kb |
#include <fstream>
#include <cmath>
using namespace std;
ifstream in("inversmodular.in");
ofstream out("inversmodular.out");
int n;
long long pow(int h,int p)
{
if(p==1)
return h;
long long k=pow(n,p/2);
if(p%2==1)
return k*k%n*h%n;
return k*k%n;
}
int main()
{
long long a,i;
in>>a>>n;
i=pow(a,n-2);
out<<i%n;
return 0;
}