Cod sursa(job #3290676)

Utilizator Victor5539Tanase Victor Victor5539 Data 31 martie 2025 15:52:14
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.88 kb
#include <iostream>
#include <fstream>
#define int long long
using namespace std;
ifstream fin("euclid3.in");
ofstream fout("euclid3.out");

int t,a,b,x,y,d,gcd,c;

int cmmdc(int a ,int b)
{
    int r;
    while (b)
    {
        r=a%b;
        a=b;
        b=r;
    }

    return a;
}

void euclid(int a, int b, int& d,int& x, int& y)
{
    if (b==0)
    {
        x=1;
        y=0;
        d=a;
    }
    else
    {
        int x1,y1;
        euclid(b,a%b,d,x1,y1);

        x=y1;
        y=x1-a/b*y1;
    }
}

signed main()
{
    fin>>t;
    while (t)
    {
        fin>>a>>b>>c;

        gcd=cmmdc(a,b);

        if (c%gcd!=0)
            fout<<0<<" "<<0<<"\n";
        else
        {
            x=0; y=0;




            euclid(a,b,d,x,y);
            fout<<x*c/d<<" "<<y*c/d<<"\n";
        }
        t--;
    }

    return 0;
}