Cod sursa(job #1610969)

Utilizator eustatiuDima Eustatiu eustatiu Data 23 februarie 2016 21:01:06
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<stdio.h>
#define LL long long
long n,i,j,a,b,c,t;
inline const LL cmmdc (const LL A,const LL B,LL& x,LL& y)
{
    if(B==0)
    {
        x=1;
        y=0;
        //A*1+B*0=D;
        return A;
    }
    LL x0,y0,d;
    d=cmmdc(B,A%B,x0,y0);
    x=y0;
    y=(d-A*x)/B;
    return d;
}
int main()
{
    freopen("euclid3.in","r",stdin);
    freopen("euclid3.out","w",stdout);
    scanf ("%ld",&t);
    LL x,y,d;
    for (i=1;i<=t;i++)
    {
        scanf ("%lld%lld%lld",&a,&b,&c);
        d=cmmdc(a,b,x,y);
        if (c%d)
            printf ("0 0\n");
        else
            printf ("%ld %ld\n",x*(c/d),y*(c/d));
    }
    return 0;
}