Cod sursa(job #2052957)

Utilizator Bodo171Bogdan Pop Bodo171 Data 31 octombrie 2017 11:27:18
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;
int X[40],Y[40];
int a,b,c,d,t;
void gcde(int A,int B,int lev)
{
    if(B==0)
    {
        X[lev]=1;
        Y[lev]=0;
        d=A;
        return;
    }
    gcde(B,A%B,lev+1);
    X[lev]=Y[lev+1];
    Y[lev]=X[lev+1]-(A/B)*Y[lev+1];
}
int main()
{
    ifstream f("euclid3.in");
    ofstream g("euclid3.out");
    f>>t;
    for(int cnt=1;cnt<=t;cnt++)
    {
        f>>a>>b>>c;
        gcde(a,b,1);
        if(c%d) g<<"0 0\n";
        else g<<(c/d)*X[1]<<' '<<(c/d)*Y[1]<<'\n';
    }
    return 0;
}