Cod sursa(job #241358)

Utilizator mircea_infoSuciu Mircea-Gabriel mircea_info Data 9 ianuarie 2009 21:52:53
Problema Invers modular Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.43 kb
#include <cstdio>

using namespace std;

int a,b,x,y;

void cmmdc(int x, int y)
{
	if(y==0)
	{
	    a=1;
	    b=0;
	}
	else
	{
	    cmmdc(y,x%y);
	    int aux=a;
	    a=b;
	    b=aux-b*(x/y);
	}
}

int main()
{
    freopen("inversmodular.in","r",stdin);
    freopen("inversmodular.out","w",stdout);
    scanf("%d%d",&x,&y);
    cmmdc(x,y);
    if(a<=0)
        a=y+a%y;
    printf("%d\n",a);
    return 0;
}