Cod sursa(job #324814)

Utilizator crisojogcristian ojog crisojog Data 17 iunie 2009 15:00:55
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<stdio.h>
long a,b,c,t,u1,u2,u3,v1,v2,v3,r1,r2,r3,q,kiki;
void euclid()
{
	scanf("%ld%ld%ld",&a,&b,&c);
	u3=a,v3=b;
	u1=v2=1; u2=v1=0;
	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)
	{
		t=c/u3;
		u1*=t;u2*=t;
		printf("%ld %ld\n",u1,u2);
	}
	else printf("0 0\n");
}
int main()
{
	int i;
	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	scanf("%ld",&kiki);
	for(i=1;i<=kiki;++i)
		euclid();
	return 0;
}