Cod sursa(job #522156)

Utilizator BitOneSAlexandru BitOne Data 14 ianuarie 2011 14:12:42
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
/* 
 * File:   main.cpp
 * Author: salexandru
 *
 * Created on January 14, 2011, 1:33 PM
 */
#include <fstream>
#include <cstdlib>

using namespace std;

/*
 * 
 */
inline int gcd( int a, int b, int& x, int& y )
{
    if( !b )
    {
        x=1;
        y=0;
        return a;
    }
    int d, x0, y0;
    d=gcd( b, a%b, x0, y0 );
    x=y0;
    y=x0-(a/b)*y0;
    return d;
}
int main(int argc, char** argv)
{
    int T, a, b, c, d, x, y;
    ifstream in( "euclid3.in" );
    ofstream out( "euclid3.out" );
    for( in>>T; T; --T )
    {
        in>>a>>b>>c;
        d=gcd( a, b, x, y );
        if( c%d )
            out<<"0 0\n";
        else c/=d, out<<(x*c)<<' '<<(y*c)<<'\n';
    }
    return 0;
}