Cod sursa(job #1758412)

Utilizator isa_fares_mudiFares Mohamad isa_fares_mudi Data 17 septembrie 2016 11:04:07
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <cstdio>
using namespace std;
int euclid ( int a, int b, int &x, int &y )
{
    int d, x2, y2;
    if ( b == 0 ) {
        x = 1;
        y = 0;
        return a;
    }
    d = euclid ( b, a%b, x2, y2 );
    x = y2;
    y = x2 - y2 * ( a / b );
    return d;
}

int main () {
    freopen ( "euclid3.in", "r", stdin );
    freopen ( "euclid3.out", "w", stdout );
    int t, a, b, c, d, x, y, i;
    scanf ( "%d", &t );
    for ( i = 1 ; i <= t ; ++i ) {
        scanf ( "%d %d %d", &a, &b, &c );
        d = euclid ( a, b, x, y );
        if( c % d != 0 )
            printf ( "0 0\n" );
        else
            printf ( "%d %d\n", x * (c / d), y * (c / d) );
    }
}