Cod sursa(job #2126329)

Utilizator Alex_BubBuburuzan Alexandru Alex_Bub Data 9 februarie 2018 15:27:29
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>

using namespace std;

ifstream fin("euclid3.in");
ofstream fout("euclid3.out");

int d, x, y;

void euclid3(int a, int b, int x1, int y1, int x2, int y2)
{
    if(!b) {
        d = a;
        x = x1;
        y = y1;
    } else {
        euclid3(b, a % b, x2, y2, x1 - a / b * x2, y1 - a / b * y2);
    }
}
int main()
{
    int t;

    fin >> t;

    while(t--) {
        int a, b, c;

        fin >> a >> b >> c;

        euclid3(a, b, 1, 0, 0, 1);

        if(!(c % d)) {
            x *= c/d;
            y *= c/d;
        } else {
            x = 0;
            y = 0;
        }

        fout << x <<" "<< y << '\n';
    }

    return 0;
}