Cod sursa(job #902009)

Utilizator anonymous_l3510nAnonymous Romania anonymous_l3510n Data 1 martie 2013 12:33:01
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.89 kb
#include <fstream>
 
using namespace std;
 
const int Max = 100;
 
int CMMDC(int a, int b, int &x, int &y);
 
int main(int argc, char *argv[])
{
    long coef_A, coef_B, coef_C;
    int T, d, x, y;
 
    ifstream inFILE("euclid3.in");
    ofstream outFILE("euclid3.out");
 
    inFILE >> T;
 
    for (int i = 1; i <= T; i++)
    {
        inFILE >> coef_A >> coef_B >> coef_C;
 
        d = CMMDC(coef_A, coef_B, x, y);
 
        if (coef_C % d)
        {
            outFILE << "0 0" << "\n";
        }
        else
        {
            outFILE << x * (coef_C / d) << " " << y * (coef_C / d) << "\n";
        }
    }
}
 
int CMMDC(int a, int b, int &x, int &y)
{
    if (b == 0)
    {
        x = 1;
        y = 0;
        return a;
    }
 
    int x0, y0, d;
    d = CMMDC(b, a%b, x0, y0);
     
    x = y0;
    y = x0 - (a / b) * y0;
 
    return d;
}