Cod sursa(job #161175)

Utilizator CosminStirbuStirbu Cosmin CosminStirbu Data 17 martie 2008 17:56:56
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include<stdio.h>

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

 }


int main ()
 { long a,b,t,d,x,y,i,c;
   FILE*f=fopen("euclid3.in","r");
   FILE*g=fopen("euclid3.out","w");
   fscanf(f,"%ld",&t);
   for (i=1;i<=t;i++)
     { fscanf(f,"%ld%ld%ld",&a,&b,&c);
       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));
	}

    fcloseall();
    return 0;
    }