Cod sursa(job #1006519)

Utilizator supermitelArdelean Razvan Mitel supermitel Data 7 octombrie 2013 10:41:44
Problema Invers modular Scor 50
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <cstdio>


void euclid(int a, int b, int &d, int &x, int &y)
{
    if(b==0)
    {
        x=1;
        y=0;
        d=a;
        return;
    }
    int x0,y0;

    euclid(b,a%b,d,x0,y0);
    x = y0;
    y = x0 - a/b * y0;
}

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

    int t,a,b,c,x,y,d;
   //scanf("%d",&t);
   // for(int q=0;q<t;q++)
   // {
        scanf("%d%d", &a, &b);
        c = 1;
        euclid(a,b,d,x,y);
        if(c%d==0)
            printf("%d\n", x*(c/d));
        else
            printf("0 0\n");
   // }

    return 0;
}