Cod sursa(job #416587)

Utilizator adrianraduleaRadulea Adrian adrianradulea Data 12 martie 2010 23:05:07
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.52 kb
#include<stdio.h>
long i,t,a,b,c,x,y,d;
FILE *f,*g;
inline long Euclid(long m,long n,long &x,long &y)
{ if(n==0) { x=1; y=0;  return m; }
  long xp,yp,d; 
  d=Euclid(n,m%n,xp,yp);
  x=yp; 
  y=xp-(m/n)*yp;
  return d;
}
int main()
{ f=fopen("euclid3.in","r"); g=fopen("euclid3.out","w");
  fscanf(f,"%ld",&t);
  for(i=1;i<=t;i++)
   { fscanf(f,"%ld%ld%ld",&a,&b,&c);
     x=y=0; d=Euclid(a,b,x,y);
	 if(c%d) fprintf(g,"0 0\n");
     else fprintf(g,"%ld %ld\n",x*(c/d),y*(c/d));
   } 
  fclose(g);
  return 0;
}