Cod sursa(job #1496092)

Utilizator ArkinyStoica Alex Arkiny Data 4 octombrie 2015 12:31:59
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include<fstream>
using namespace std;

ifstream in("euclid3.in");
ofstream out("euclid3.out");

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

int main()
{
	int T,a,b,c,x,y,d;
	in >> T;
	for (int i = 1;i <= T;++i)
	{
		in >> a >> b >> c;
		euclid_ext(a,b,x,y,d);
		if (c%d == 0)
			out << x*(c/d) << " " << y*(c/d)<<'\n';
		else
			out << "0 0\n";
	}

	in.close();
	out.close();

	return 0;
}