Cod sursa(job #396754)

Utilizator bugyBogdan Vlad bugy Data 15 februarie 2010 20:15:58
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.56 kb
#include <stdio.h>
using namespace std;
void cmmdc(int a, int b,int &d, int &x, int &y){
	if(b == 0){
		d = a;
		x = 1;
		y = 0;
		return;
	}
	int x0, y0;
	cmmdc(b, a%b, d, x0, y0);
	x = y0;
	y = x0 - (a/b) * y0; 
}
int main(){
	FILE *f=fopen("euclid3.in", "r"), *g=fopen("euclid3.out", "w");
	int t;
	fscanf(f,"%d", &t);
	for(;t ;--t){
		int a, b, c, d, x, y;
		fscanf(f,"%d%d%d", &a, &b, &c);
		cmmdc(a, b, d, x, y);
		if(c % d)
			fprintf(g,"0 0\n");
		else fprintf(g,"%d %d\n", x * (c/d), y * (c/d));
	}
	
fclose(f);
//fclose(g);
	return 0;
}