Cod sursa(job #281217)

Utilizator dya_ndmNanuti Diana-Maria dya_ndm Data 13 martie 2009 21:53:02
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include<stdio.h>
#include<string.h>

long a,b,c,u[5],v[5],r[5];
int t;

long euclid()
{
long q;
u[1]=1;
u[2]=0;
u[3]=a;
v[1]=0;
v[2]=1;
v[3]=b;

while(v[3]!=0)
     {
     q=u[3]/v[3];
     r[1]=u[1]-q*v[1];
     r[2]=u[2]-q*v[2];
     r[3]=u[3]-q*v[3];
     memcpy(u,v,sizeof(u));
     memcpy(v,r,sizeof(r));
     }
}

int main()
{
freopen("euclid3.in","r",stdin);
freopen("euclid3.out","w",stdout);

scanf("%d",&t);

int i;
long x;

for(i=1;i<=t;++i)
   {
   scanf("%ld%ld%ld",&a,&b,&c);
   euclid();
   if(c%u[3]!=0)
     printf("0 0\n");
   else
     {
     x=c/u[3];
     u[1]=u[1]*x;
     u[2]=u[2]*x;
     printf("%ld %ld\n",u[1],u[2]);
     }
   }
return 0;
}