Cod sursa(job #1083510)

Utilizator vladutz15FMI Cornoiu Vlad vladutz15 Data 16 ianuarie 2014 00:50:45
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <cstdio>
using namespace std;
int n,a,b,c,X,Y,d;
inline int gcd( int A, int B, int &X, int &Y )
{
    if (B == 0)
    {
        X = 1;
        Y = 0;
        return A;
    }
 
    int X0, Y0, D;
    D = gcd( B, A % B, X0, Y0 );
     
    X = Y0;
    Y = X0 - (A / B) * Y0;
    return D;
}
int main ()
{
	freopen("euclid3.in","r",stdin);
	freopen("euclid3.out","w",stdout);
	scanf("%d",&n);
	for (;n;n--)
	{
		scanf("%d%d%d",&a,&b,&c);
		d = gcd( a, b, X, Y );
        if (c % d)
            printf("0 0\n");
        else
            printf("%d %d\n",X*(c/d),Y*(c/d));
	}
}