Cod sursa(job #1897087)

Utilizator GeorgeCalinPetruta George-Calin GeorgeCalin Data 1 martie 2017 09:49:33
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <cstdio>
#define f stdin
#define g stdout
using namespace std;

int gcd(int a,int b,int &x,int &y)
{
    if(!b)
    {
        x=1;
        y=0;
        return a;
    }
    int d,x0,y0;
    d=gcd(b,a%b,x0,y0);
    x=y0;
    y=x0-(a/b)*y0;
    return d;
}

int main()
{
    int a,b,c,nr,d;
    freopen("euclid3.in","r",f);
    freopen("euclid3.out","w",g);
    scanf("%d",&nr);
    for(int i=1;i<=nr;i++)
    {
        scanf("%d %d %d",&a,&b,&c);
        int x,y;
        d=gcd(a,b,x,y);
        if(c%d)
        {
            printf("0 0\n");
        }
        else
        {
            printf("%d %d\n",x*(c/d),y*(c/d));
        }
    }
    return 0;
}