Cod sursa(job #542842)

Utilizator Antonius74Antonius Cezar Hegyes Antonius74 Data 27 februarie 2011 00:33:41
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <cstdio>
using namespace std;

void exponenten (int a, int b, int *d, int *x, int *y)
{
	if (b==0)
	{
		*d=a;
		*x=1;
		*y=0;
	}
	else
	{
		int x0, y0;
		exponenten (b, a % b, d, &x0, &y0);
        *x = y0;
        *y = x0 - (a / b) * y0;
	}
}

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