Cod sursa(job #2605039)
| Utilizator | Data | 24 aprilie 2020 12:23:23 | |
|---|---|---|---|
| Problema | Algoritmul lui Euclid extins | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <fstream>
using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
int t, a, b, c;
int x, y, gcd;
void ee(int a, int b, int &gcd, int &x, int &y) {
if(b==0) {
gcd=a;
x=1;
y=0;
return;
}
int xp, yp;
ee(b, a%b, gcd, xp, yp);
x=yp;
y=xp-(a/b)*yp;
}
int main() {
f>>t;
while(t) {
t--;
f>>a>>b>>c;
ee(a, b, gcd, x, y);
if(c%gcd==0)
g<<x*(c/gcd)<<' '<<y*(c/gcd)<<'\n';
else
g<<0<<' '<<0<<'\n';
}
f.close();
g.close();
return 0;
}