Cod sursa(job #514342)

Utilizator popacamilpopa camil popacamil Data 18 decembrie 2010 15:10:38
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include<cstdio>
using namespace std;
int t,x,y,d;
int cmmdc(int a,int b,int &d,int &x,int &y){
	int x0,y0;
	if(b==0){
		d=a;
		y=0;
		x=1;
		return a;
	}
	
	d=cmmdc(b,a%b,d,x0,y0);
	x=y0;
	y=x0-(a/b)*y0;
	return d;
}
int main(){
	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	int i;
	scanf("%d",&t);
	for(i=1; i<=t;++i){
		int a,b,c;
		scanf("%d %d %d",&a,&b,&c);
		d=cmmdc(a,b,d,x,y);
		if(c%d){
			printf("0 0\n");
		}
		else{
			printf("%d %d\n",x*(c/d),y*(c/d));
		}
	}
	return 0;
}