Cod sursa(job #359910)

Utilizator Bogdan_tmmTirca Bogdan Bogdan_tmm Data 28 octombrie 2009 20:40:10
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<stdio.h>
#include<vector>
using namespace std;
class euclid
{
public:
	int d,x,y;
	euclid(int d1,int x1,int y1)
	{
		d=d1;x=x1;y=y1;
	}
};
euclid euclid3(int a,int b)
{
	if(b==0)
	{
		euclid dxy(a,1,0);
		return dxy;
	}
	euclid dxy(euclid3(b,a%b));
	euclid DXY(dxy.d,dxy.y,dxy.x-(a/b)*dxy.y);
	return DXY;
}
int main()
{
	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	int n,a,b,c;
	scanf("%d",&n);
	for(int i=0;i<n;i++)
	{
		scanf("%d%d%d",&a,&b,&c);
		euclid dxy(euclid3(a,b));
		if(c%dxy.d==0)
			printf("%d %d\n",(c/dxy.d)*dxy.x,(c/dxy.d)*dxy.y);
		else
			printf("0 0\n");
	}
	return 0;
}