Cod sursa(job #144226)

Utilizator igorPirnau Igor igor Data 27 februarie 2008 13:02:28
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include<fstream.h>

ifstream f("euclid3.in");
ofstream g("euclid3.out");

int a, b, c, *d, *s1, *s2, T, i;

void euclid_2(int p, int t, int *r, int *x, int *y)
{
    if(t==0){
        *r=p;
        *x=1;
        *y=0;
    }
        else{
            int x0, y0;
            euclid_2(t, p%t, r, &x0, &y0);
            *x=y0;
            *y=x0-(p/t)*y0;
        }
}

int main()
{
    f>>T;

    for(i=1; i<=T; i++){
        f>>a>>b>>c;
        euclid_2(a, b, d, s1, s2);
        if(c % *d) g<<"0 0\n";
            else{ *s1 = *s1 *c / *d;  *s2 = *s2 *c/ *d; g<<*s1<<' '<<*s2<<'\n'; }
    }

    g.close();
    return 0;
}