Cod sursa(job #1689546)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 14 aprilie 2016 12:40:16
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>

using namespace std;

ifstream f("euclid3.in");
ofstream g("euclid3.out");

int t, a, b, c, d, x, y;

int euclid(int a, int b, int &x, int &y)
{
    if (b == 0)
    {
        x = 1, y = 0;
        return a;
    }
    int xx = 0, yy = 0, c;
    c = euclid(b, a%b, xx, yy);
    x = yy;
    y = xx - (a/b)*yy;
    return c;
}

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