Cod sursa(job #1098891)

Utilizator pintilie.andreiPintilie pintilie.andrei Data 5 februarie 2014 12:19:20
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;

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

int n;
int euclid(int,int,int&,int&);

int main()
{
    int i,a,b,x,y,val,c;
    fin >> n;
    for(i=1;i<=n;i++)
    {
        fin >> a >> b >> c;
        val=euclid(a,b,x,y);
        if(c%val==0)
            fout << x*(c/val) << ' '<< y*(c/val) << '\n';
        else fout << 0 << ' ' << 0 << '\n';

    }
    return 0;
}

int euclid(int a, int b, int &x, int &y)
{
    if (b==0) {x=1; y=0; return a;}
    int x0, y0, c;
    c=euclid(b, a%b, x0, y0);
    x=y0;
    y=x0-y0*(a/b);
    return c;
}