Cod sursa(job #1609732)

Utilizator Ene_Orlando_Georgian_321CBEne Orlando Georgian Ene_Orlando_Georgian_321CB Data 22 februarie 2016 23:03:52
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <stdio.h>

void euclid(int a,int b,int *x,int *y,int *d){
	if(b == 0){
		*x = 1;
		*y = 0;
		*d = a;
	}
	else{
		int x0,y0;
		euclid(b,a%b,&x0,&y0,d);
		*x = y0;
		*y = x0 - (a/b)*y0;
	}
}

int main(){

	FILE* in = fopen("euclid3.in","r");
	FILE* out = fopen("euclid3.out","w");
	int T,i = 0,a,b,c,d,x,y;
	fscanf(in,"%d",&T);

	for(int i=0;i<T;i++){
		fscanf(in,"%d %d %d",&a,&b,&c);
		euclid(a,b,&x,&y,&d);
		if(c%d == 0){
			fprintf(out,"%d %d\n",x*(c/d),y*(c/d));
		}
		else{
			fprintf(out,"%d %d\n",0,0);

		}
	}

	return 0;
}