Cod sursa(job #1263273)

Utilizator ralucik_2006Filimon Raluca Elena ralucik_2006 Data 14 noiembrie 2014 12:28:26
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.77 kb
#include <fstream>

using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
long long a,b,xa,ya,t,c,cmmdc,i;
long long euclid_ext(long long a,long long b,long long &xa,long long &ya);
int main()
{
    f>>t;
    for(i=1;i<=t;i++)
    {
        f>>a>>b>>c;
        cmmdc=euclid_ext(a,b,xa,ya);
        if(c%cmmdc==0)
            g<<xa*c/cmmdc<<" "<<ya*c/cmmdc<<'\n';
        else
            g<<0<<" "<<0<<'\n';
    }
    return 0;
}
long long euclid_ext(long long a,long long b,long long &xa,long long &ya)
{
    int x,y,c,aux,r;
    xa=1;
    ya=0;
    x=0;
    y=1;
    while(b!=0)
    {
        c=a/b;
        r=a%b;
        aux=x;x=xa-c*x;xa=aux;
        aux=y;y=ya-c*y;ya=aux;
        a=b;
        b=r;
    }
    return a;
}