Pagini recente » Cod sursa (job #1961884) | Cod sursa (job #2002656) | Istoria paginii utilizator/tanaseflorin | Cod sursa (job #1292379) | Cod sursa (job #731090)
Cod sursa(job #731090)
#include <stdio.h>
#include <math.h>
#include <algorithm>
using namespace std;
FILE *e = fopen ("inversmodular.in", "r");
FILE *f = fopen ("inversmodular.out", "w");
int A, MOD, X;
int exp (int a, int e)
{
long long x = 1;
while (e != 0)
{
if (e & 1)
x = x * a % MOD;
a = a * a % MOD;
e >>= 1;
}
return x;
}
int main ()
{
fscanf (e, "%d%d", &A, &MOD);
X = exp (A, MOD - 2);
fprintf (f, "%d\n", X);
return 0;
}