Cod sursa(job #1527325)

Utilizator catu_bogdan_99Catu Bogdan catu_bogdan_99 Data 17 noiembrie 2015 23:31:03
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <cstdio>
using namespace std;

void euclid( int a, int b, int &x, int &y, int &d ){

    if( b == 0 ){
        d = a;
        x = 1;
        y = 0;
        return ;
    }

    int x1, y1;
    euclid( b, a%b, x1, y1, d );

    x = y1;
    y = x1 - y1 * ( a / b );


}

int main()
{

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

    int n, i, a, b, c, d, x, y;

    scanf("%d",&n);

    for( i = 1; i <= n; ++i ){

        scanf("%d%d%d",&a,&b,&c);

        x = y = d = 0;
        euclid(a,b,x,y,d);

        if( c % d == 0 ){
            printf("%d %d\n",x*(c/d),y*(c/d));
        }
        else printf("0 0\n");
    }

    return 0;
}