Cod sursa(job #1145390)

Utilizator SilverGSilver Gains SilverG Data 18 martie 2014 10:24:27
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
/*
    Keep It Simple!
*/

#include<stdio.h>

int T,d,x,y;

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

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

	scanf("%d",&T);

	while(T--)
	{
		scanf("%d%d%d",&x,&y,&d);
		int s1,s2;
		int d1  = euclid(x,y,s1,s2);
		if( d%d1 == 0 ) printf("%d %d\n",(d/d1) * s1,(d/d1) * s2);
		else printf("0 0\n");
	}
}