Cod sursa(job #3142869)

Utilizator SSKMFSS KMF SSKMF Data 25 iulie 2023 10:29:38
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.96 kb
#include <fstream>
using namespace std;

ifstream cin ("euclid3.in");
ofstream cout ("euclid3.out");

int Euclid (int numar_1 , int numar_2 , int &factor_1 , int &factor_2)
{
    if (!numar_2) {
        factor_1 = 1;
        factor_2 = 0;
        return numar_1;
    }

    int factor_3 , factor_4 , cmmdc = Euclid(numar_2 , numar_1 % numar_2 , factor_3 , factor_4);
    factor_2 = factor_3 - numar_1 / numar_2 * factor_4;
    factor_1 = factor_4;
    return cmmdc;
}

int main ()
{
    int teste;
    cin >> teste;

    for (int indice = 1 , numar_1 , numar_2 , rezultat ; indice <= teste ; indice++) {
        cin >> numar_1 >> numar_2 >> rezultat;
        int factor_1 , factor_2 , cmmdc = Euclid(numar_1 , numar_2 , factor_1 , factor_2);
        if (rezultat % cmmdc == 0) cout << factor_1 * (rezultat / cmmdc) << ' ' << factor_2 * (rezultat / cmmdc) << '\n';
            else cout << "0 0\n";
    }

    cout.close(); cin.close();
    return 0;
}