Cod sursa(job #639194)

Utilizator maritimCristian Lambru maritim Data 22 noiembrie 2011 18:37:28
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<stdio.h>s

int A,N,X,Y;

int euclid(int A,int B,int &X,int &Y)
{
	if(B == 0)
	{
		X = 1; Y = 0;
		return A;
	}
	int D = euclid(B,A%B,X,Y);
	int C = X; X = Y; Y = C-(A/B)*Y;
	return D;
}

int main()
{
	FILE *f = fopen("inversmodular.in","r");
	FILE *g = fopen("inversmodular.out","w");
	
	fscanf(f,"%d %d",&A,&N);
	euclid(A,N,X,Y);
	while(X < 0)
		X = X+N;
	fprintf(g,"%d",X%N);
	
	fclose(g);
	fclose(f);
	return 0;
}