Cod sursa(job #625472)

Utilizator blue_phoenixPosea Elena blue_phoenix Data 24 octombrie 2011 19:45:28
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <stdio.h>

   

int cmmdc(long int a, long int b, int &x, int &y){
       if(b==0){
          x=1;y=0;
          return a;
       }

        int x0, y0;
        int d=cmmdc(b, a % b, x0, y0);
        x = y0;
        y = x0 - (a / b) * y0;    
        return d; 
}


int main(){
  int t;
  int a,b,c;
  int x,y;
  FILE *fin=fopen("euclid3.in","r");
  FILE *fout=fopen("euclid3.out","w");
  fscanf(fin,"%d",&t);
  int i;
  int d;
  for(i=0;i<t;i++){
     fscanf(fin,"%d%d%d",&a,&b,&c);
     d=cmmdc(a,b,x,y);
     if(c%d==0){
       fprintf(fout,"%d %d\n",x*(c/d),y*(c/d));
     }else
     fprintf(fout,"0 0\n");
  }
  
return 0;
}