Cod sursa(job #1963978)
Utilizator | Data | 12 aprilie 2017 22:51:35 | |
---|---|---|---|
Problema | Algoritmul lui Euclid extins | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <fstream>
std::ifstream f("euclid3.in");
std::ofstream g("euclid3.out");
int x,y,xx,yy,d,e,t;
int E(int a,int b,int &x,int &y){
if (b==0){x=1,y=0; return a;}
int xx,yy,d=E(b,a%b,xx,yy);
y=xx-(a/b)*(x=yy);return d;}
int main(){
for(f>>t;t--;){
f>>x>>y>>d,xx=0,yy=0,e=E(x,y,xx,yy);
if(d%e)g<<"0 0\n";
else g<<xx*(d/e)<<' '<<yy*(d/e)<<'\n';}}