Cod sursa(job #798532)

Utilizator MtkMarianHagrSnaf MtkMarian Data 16 octombrie 2012 18:53:49
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<cstdio>
#define ll  long long 
ll a,b,c,x,y,d;
int t;
void euclid(ll a,ll b,ll *d,ll *x,ll *y) 
{
	if(b==0)
			{
				*d=a;
				*x=1;
				*y=0;
			}
	else
	{
		ll x0,y0;
		euclid(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);
	scanf ("%d",&t);

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