Cod sursa(job #1477404)

Utilizator StarGold2Emanuel Nrx StarGold2 Data 26 august 2015 10:40:11
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <cstdio>
using namespace std;

int N, A, B, C, D, X, Y;

void GCD(int A, int B, int &X, int &Y, int &D){
	if(B == 0){
		D = A;
		X = 1;
		Y = 0;
	} else {
		int X0, Y0;
		GCD(B, A % B, X0, Y0, D);
		X = Y0;
		Y = X0 - (A / B) * Y0;
	}
	return;
}

int main(){

	freopen("euclid3.in" ,"r", stdin );
	freopen("euclid3.out","w", stdout);

	scanf("%d", &N);
	for(int i = 1; i <= N; i ++){
		scanf("%d %d %d", &A, &B, &C);

		GCD(A, B, X, Y, D);

		if(C % D) printf("0 0\n");
		else      printf("%d %d\n", X * (C / D), Y * (C / D));
	}

	fclose(stdin );
	fclose(stdout);

	return 0;
}