Cod sursa(job #2476600)

Utilizator dragos0804Ciofalau Dragos Paul dragos0804 Data 19 octombrie 2019 10:00:44
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <iostream>
#include <fstream>

using namespace std;

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

int n, a, b, c, x, y, cmmdc;

void euclid(int a, int b, int &x, int &y)
{
    if (b==0)
    {
        cmmdc=a;
        x=1;
        y=0;
        return;
    }
    int xp, yp;
    euclid(b,a%b,xp,yp);
    x=yp;
    y=xp-yp*(a/b);
}

int main()
{
    f >> n;
    for (int i=1 ;i<=n; i++)
    {
        f >> a >> b >> c;
        euclid(a,b,x,y);
        if (c%cmmdc==0)
        {
            x=x*(c/cmmdc);
            y=y*(c/cmmdc);
            g << x <<' '<<y << '\n';
        }
        else
            g << 0 <<' ' << 0 << '\n';
    }
    return 0;
}