Cod sursa(job #2017511)

Utilizator JiyuuNoTsubasaMaria Guran JiyuuNoTsubasa Data 1 septembrie 2017 15:18:24
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>

using namespace std;
ifstream in ("euclid3.in");
ofstream out("euclid3.out");
int cmmdc (int k, int p, int &z, int &w)
{
    if (k%p==0)
    {
        z=0;
        w=1;
        return p;
    }
    else
    {
        int r=k%p;
        int xx,yy;
        int q=cmmdc(p,r,xx,yy);
        z=yy;
        w=xx-(yy*k/p);
        return q;
    }
}

int main()
{
    int n,a,b,c,x,y,cm;
    in>>n;
    for (int i=1;i<=n;i++)
    {
        in>>a>>b>>c;
       cm=cmmdc(a,b,x,y);
        if (c%cm==0)
        {
            x=x*c/cm;
            y=y*c/cm;
        }
        out<<x<<" "<<y<<'\n';
    }
    return 0;
}