Cod sursa(job #1893348)

Utilizator mihai.alphamihai craciun mihai.alpha Data 25 februarie 2017 17:12:18
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.72 kb
#include <fstream>
#include <iostream>

using namespace std;

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

int cm;

void cmmdc(int a, int b, int &x, int &y)  {
    if(b == 0)  {
        x = 1, y = 0, cm = a;
        return;
    }
    int x1, y1;
    cmmdc(b, a % b, x1, y1);
    x = y1;
    y = x1 - (a / b) * y1;
}

int main()  {
    int T, a, b, c, i, x, y;
    f >> T;
    for(i = 0;i < T;i++)  {
        f >> a >> b >> c;
        cmmdc(a, b, x, y);
        if(c % cm)  {
            g << "0 0\n";
        }
        else  {
            x = x * (c / cm);
            y = y * (c / cm);
            g << x << " " << y << "\n";
        }
    }
    f.close();
    g.close();
    return 0;
}