Cod sursa(job #628300)

Utilizator dany123Florea Daniel dany123 Data 31 octombrie 2011 23:33:38
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
//#include<iostream>
#include<fstream>
using namespace std;

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

int main ()
{
	int nr,a,b,c;
	ifstream fin("euclid3.in");
	ofstream fout("euclid3.out");
	fin>>nr;
	for (int i=1;i<=nr;i++)
	{
		int d=-1,x=-1,y=-1;
		fin>>a>>b>>c;
		euclide(a,b,&d,&x,&y);
		if (c%d!=0) fout<<"0 0\n";
		else fout<<x*(c/d)<<' '<<y*(c/d)<<'\n';
	}
	fin.close(); fout.close();
	return 0;
}