Cod sursa(job #1453937)

Utilizator Player1Player 1 Player1 Data 25 iunie 2015 04:52:15
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include<stdio.h>
 
int gcd(int a, int b, int &x, int &y){
	if (b == 0){
		x = 1;
		y = 0;
		return a;
	}
     
	int xn, yn;
	int res = gcd(b, a % b, xn, yn);
	x = yn;
	y = xn - (a / b) * yn;
     
    return res;
}

int main(){
	int t, a ,b, c, d, x, y, i;

	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	
	scanf("%d ",&t);
	for(i=0;i<t;i++){
		scanf("%d %d %d ",&a, &b, &c);   
		int d = gcd(a, b, x, y);

		if(c%d == 0)
			printf("%d %d\n", x * (c/d), y * (c/d));
		else
			printf("0 0\n");
	}
	
	return 0;
}