Cod sursa(job #835523)

Utilizator gabriela95Andreea Gabriela gabriela95 Data 16 decembrie 2012 10:06:38
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.54 kb
#include<fstream>
using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
int i,n,a,b,c,x,y,d;
int cmmdc(int a,int b)
{
	if(b==0)
		return a;
	else return cmmdc(b,a%b);
}
void cmmdc1(int a,int b,int &x,int &y)
{
	if(b==0)
	{
		x=1;y=0;
	}
	else
	{
		int x0;int y0;
		cmmdc1(b,a%b,x0,y0);
		x=y0;y=x0-(a/b)*y0;
	}
}
int main()
{
	f>>n;
	for(i=1;i<=n;i++)
	{
		f>>a>>b>>c;
		if(c%(d=cmmdc(a,b))==0)
		{
			cmmdc1(a,b,x,y);
			g<<x*(c/d)<<" "<<y*(c/d)<<"\n";
		}
		else g<<"0 0"<<"\n";
	}
	return 0;
}