Cod sursa(job #465436)

Utilizator SmarandaMaria Pandele Smaranda Data 24 iunie 2010 11:41:29
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<stdio.h>
int main()
{
	long a,b,c,t,i,u1,u2,u3,v1,v2,v3,r1,r2,r3,q,x,y;
	
	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	
	scanf("%ld",&t);
	for (i=1;i<=t;i++)
	{
		scanf("%ld%ld%ld",&a,&b,&c);
			u1=v2=1;
			u2=v1=0;
			u3=a;
			v3=b;
			while (v3)
			{
				q=u3/v3;
				r1=u1-q*v1;
				r2=u2-q*v2;
				r3=u3-q*v3;
				u1=v1;
				u2=v2;
				u3=v3;
				v1=r1;
				v2=r2;
				v3=r3;
			}
			if (c%u3==0)
			{
				x=u1*(c/u3);
				y=u2*(c/u3);
				printf("%ld %ld\n",x,y);
			}
			else
				printf("0 0\n");
	}
	return 0;
}