Cod sursa(job #1657743)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 20 martie 2016 19:22:51
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.66 kb
#include <fstream>

using namespace std;

int t, a, b, c, d;
ifstream f("euclid3.in");
ofstream g("euclid3.out");

int cmmdc(int A, int B, int &x, int &y)
{
    if (B == 0)
    {
        x = 1, y = 0;
        return A;
    }
    else
    {
        int xx = 0, yy = 0, d;
        d = cmmdc(B, A%B, xx, yy);
        x = yy;
        y = xx- (A/B)*yy;
        return d;
    }
}

int main()
{
    for (f >> t; t; t--)
    {
        f >> a >> b >> c;
        int x = 0, y = 0;
        d = cmmdc(a, b, x, y);
        if (c%d != 0)
            g << "0 0\n";
        else
            g << x*(c/d) << " " << y*(c/d) << "\n";
    }
    return 0;
}