Cod sursa(job #731090)

Utilizator AndreiRSStatescu Andrei Rares AndreiRS Data 7 aprilie 2012 14:36:20
Problema Invers modular Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#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;
}