Cod sursa(job #386176)

Utilizator ConsstantinTabacu Raul Consstantin Data 24 ianuarie 2010 11:25:30
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.44 kb
#include<stdio.h>

long long a,n,inv,ins;

void invers(long long &x,long long &y,long long a,long long b){
if(!b )
	{x= 1; y = 0;}
else{
	invers(x,y,b,a%b);
	long long aux = x;
	x = y;
	y = aux - y*(a/b);
}

}


int main(){
freopen("inversmodular.in","r",stdin);
freopen("inversmodular.out","w",stdout);

scanf("%lld %lld",&a,&n);


invers(inv,ins,a,n);
if(inv <= 0)
	inv = n + inv%n;

printf("%lld",inv);

return 0;}