Cod sursa(job #1098860)

Utilizator roxyroxy2011Luca Roxana roxyroxy2011 Data 5 februarie 2014 12:04:34
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <fstream>

using namespace std;

ifstream cin("euclid3.in");
ofstream cout("euclid3.out");

int t;

int euclid(long long a,long long b,long long &x,long long &y)
{
    if (b==0) {x=1;y=0;return a;}
    long long x0,y0;
    int d=euclid(b,a%b,x0,y0);
    x=y0;
    y=x0-((long long)y0*((long long) a/b));
    return d;
}

int main()
{
    cin>>t;
    for (int i=1;i<=t;i++)
    {
        long long a,b,c;
        cin>>a>>b;
        long long x,y;
        int d=euclid(a,b,x,y);
        if (c%d) cout<<"0 0\n";
        else
        cout<<x*(c / d)<<' '<<y*(c / d)<<'\n';
    }
    cin.close();cout.close();
    return 0;
}