Cod sursa(job #1257967)
Utilizator | Data | 8 noiembrie 2014 12:45:52 | |
---|---|---|---|
Problema | Invers modular | Scor | 60 |
Compilator | cpp | Status | done |
Runda | cls6ichbsim1 | Marime | 0.4 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("inversmodular.in");
ofstream out("inversmodular.out");
long long p;
long long putere(long long a,long long l)
{
if(l==0)
return 1;
long long c=putere(a,l/2);
if(l%2==0)
return c*c%p;
return c*c%p*a%p;
}
int main()
{
long long a;
in>>a>>p;
out<<putere(a,p-2);
return 0;
}