Pagini recente » Cod sursa (job #442580) | Cod sursa (job #2804398) | Cod sursa (job #722356) | Cod sursa (job #441881) | Cod sursa (job #2088570)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("euclid3.in");
ofstream fout ("euclid3.out");
long long cmmdc(long long a,long long b)
{
long long aux;
while (b!=0)
{
aux=a%b;
a=b;
b=aux;
}
return a;
}
int main()
{
long long T,a,x,b,y,c,d,n,m,im,r1,r2;
fin>>T;
for (int i=1;i<=T;i++)
{
/// A*X+B*Y=C
/// N*X+M*Y=C
fin>>a>>b>>c;
if (a==0||b==0)
{
y=1;
d=a+b;
if (d!=0&&c%d==0)
fout<<c/d<<" "<<c/d;
else
fout<<0<<" "<<0;
}
else
{
d=cmmdc(a,b);
n=a/d;
m=b/d;
im=c/d;
if (c%d==0)
{
x=0;
while ((1-n*x)%m!=0)
x++;
y=(1-n*x)/m;
d=cmmdc(x*im,y*im);
r1=x*im/d;
r2=y*im/d;
fout<<r1<<" "<<r2;
}
else
fout<<0<<" "<<0;
}
fout<<'\n';
}
return 0;
}