Pagini recente » Cod sursa (job #1443302) | Cod sursa (job #2260778) | Cod sursa (job #2364137) | Cod sursa (job #2851469) | Cod sursa (job #956676)
Cod sursa(job #956676)
#include<iostream>
#include<fstream>
#include<assert.h>
using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
int A,B,C,T;
int euclid(int A,int B,int &X,int &Y)
{
if(B==0)
{X=1;
Y=0;
return A;}
else {int X0,Y0,D;
D=euclid(B,A%B,X0,Y0);
X=Y0;
Y=X0-(A/B)*Y0;
return D;}
}
int main()
{f>>T;
for(;T;T--)
{f>>A>>B>>C;
assert(-1000000000<=A&&A<=1000000000);
assert(-1000000000<=B&&B<=1000000000);
assert(-2000000000<=C&&C<=2000000000&&C!=0);
int D,X,Y;
D = euclid( A, B, X, Y );
if (C%D)
g<<"0 0"<<"\n";
else
g<<X*(C/D)<<" "<<Y*(C/D);
}
return 0;
}