Cod sursa(job #1048078)

Utilizator piroslPiros Lucian pirosl Data 5 decembrie 2013 11:22:42
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include<fstream>
using namespace std;

int main(int argc, char* argv[]) {
	ifstream in;
	ofstream out;
	in.open("euclid3.in");
	out.open("euclid3.out");

	int n;
	in >> n;
	for(int i=0;i<n;++i) {
		int a,b,c;
		in >> a >> b >> c;
		int s[2];
		int t[2];
		s[0] = 1; s[1] = 0;
		t[0] = 0; t[1] = 1;
		while(b != 0) {
			int q = a / b;
			int r = a % b;
			int sk = s[0] - q*s[1];
			int tk = t[0] - q*t[1]; 
			s[0] = s[1]; s[1] = sk;
			t[0] = t[1]; t[1] = tk;
			a = b;
			b = r;
		}
		if(c % a != 0)
			out << "0 0\n";
		else 
			out << s[0] * (c / a) << " " << t[0] * (c / a) << "\n";
	}
	
	out.close();
	in.close();
	return 0;
}