Cod sursa(job #2144966)

Utilizator SantimosSantimos Santimos Data 27 februarie 2018 00:24:02
Problema Algoritmul lui Euclid extins Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
int t;
long long int a,b,c;
long long int testc,zero1,zero2;

long long int EuclidExtins(long long int d,long long int e,long long int &x,long long int &y){
    //d<=>a
    //e<=>b
    if(!e){
        x=1,y=0;
        return d;
    }
    else{
        //k1=k2=0 testul care pleaca de la zero iar
        long long int k1,k2,f;
        f=EuclidExtins(e,d%e,k1,k2);
        x=k2;
        y=k1-k2*(d/e);
        return f;
    }
}

int main(){
    f>>t;
    for(int i=1;i<=t;i++){
        f>>a>>b>>c;
        testc=EuclidExtins(a,b,zero1,zero2);
        if(c%testc)g<<"0 0"<<endl;
        else cout<<zero1*(c/testc)<<" "<<zero2*(c/testc)<<endl;
    }
return 0;
}