Cod sursa(job #3133268)

Utilizator pregoliStana Andrei pregoli Data 25 mai 2023 13:58:09
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <bits/stdc++.h>
using namespace std;
const string FNAME = "euclid3.";
ifstream fin(FNAME + "in");
ofstream fout(FNAME + "out");

void euclid(int a, int b, int &gcd, int &x, int &y) {
    if (!b) {
        gcd = a;
        x = 1;
        y = 0;
    } else {
        int xaux, yaux;
        euclid(b, a % b, gcd, xaux, yaux);
        x = yaux;
        y = xaux - (a/b) * yaux;
    }
}

int main() {
    int t;
    fin >> t;
    for (int a, b, c, gcd, x, y; t--;) {
        fin >> a >> b >> c;
        euclid(a, b, gcd, x, y);
        if (c % gcd) {
            fout << "0 0\n";
        } else {
            fout << x * (c/gcd) << ' ' << y * (c/gcd) << '\n';
        }
    }
    fout.close();
    return 0;
}