Cod sursa(job #2432282)

Utilizator cyg_Alex_codegicianBarbu Alexandru cyg_Alex_codegician Data 22 iunie 2019 20:36:49
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>
using namespace std;
ifstream cin("euclid3.in");
ofstream cout("euclid3.out");
int gcd(int a,int b)
{
    if (b==0) return a;
    else return gcd(b,a%b);
}
void gcdext(int a,int b,int &x,int &y)
{
    int x0,y0;
    if (b==0)
    {
        x=1;
        y=0;
    }
    else
    {
        gcdext(b,a%b,x0,y0);
        x=y0;
        y=x0-(a/b)*y0;
    }
}
int main()
{
    int a,b,c,x,y,d,t;
    cin >> t;
    for (int i=1;i<=t;i++)
    {
        cin >> a >> b >> c;
        d=gcd(a,b);
        gcdext(a,b,x,y);
        if (c%d!=0) cout << "0 0" << '\n';
        else cout << c/d*x << " " << c/d*y << '\n';
    }
}