Cod sursa(job #328794)

Utilizator LuffyBanu Lavinia Luffy Data 3 iulie 2009 13:27:04
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include<stdio.h>
using namespace std;
int a,b,c;   
int cmmdc(int a, int b)   
{int r;   
 while(b!=0)   
    {r=a%b;   
     a=b;   
	 b=r;   
    }   
    return a;   
}   
void euclid(int a, int b, int &x, int &y, int &d)   
{if(b==0)   
  {x=1;   
   y=0;   
   d=a;   
  }   
else   
  {int x1,y1;   
   euclid(b,a%b,x1,y1,d);   
	x=y1;   
	y=x1-a/b*y1;   
  }   
}   
  

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