Cod sursa(job #3164524)
Utilizator | Data | 3 noiembrie 2023 15:29:49 | |
---|---|---|---|
Problema | Algoritmul lui Euclid extins | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.63 kb |
#include <iostream>
#include<fstream>
using namespace std;
int euclid(int a, int b, int &x, int &y) {
if(b==0){
x = 1;
y = 0;
return a;
}
int x0, y0,d;
d =euclid(b, a % b, x0, y0);
x = y0;
y = x0 - (a / b) * y0;
return d;
}
int main()
{
ifstream cin("euclid3.in");
ofstream cout("euclid3.out");
int cate,a,b,c,rez;
cin>>cate;
for(int i=0;i<cate;i++){
cin>>a>>b>>c;
int x,y;
rez=euclid(a,b,x,y);
if(c%rez){
cout<<"0 0"<<'\n';
}
else{
cout<<x*(c/rez)<<" "<<y*(c/rez)<<'\n';
}
}
return 0;
}