Pagini recente » Borderou de evaluare (job #1720512) | Cod sursa (job #2150047) | Cod sursa (job #2959372) | Cod sursa (job #825525) | Cod sursa (job #1262979)
#include <fstream>
#include <cstdio>
using namespace std;
ofstream g("euclid3.out");
long a,b,c,r,cat,n,aux,i,j,x,y,xa,ya;
long modul(long k)
{
if (k<0)
return -k;
return k;
}
long cmmdc(long a,long b)
{
long r=1;
while (r!=0)
{
r=a%b;
a=b;
b=r;
}
return a;
}
int main()
{
freopen("euclid3.in","r",stdin);
scanf("%ld",&n);
for (i=1;i<=n;i++)
{
scanf("%ld%ld%ld",&a,&b,&c);
if (b<a)
{
aux=a;
a=b;
b=aux;
}
if (b==0)
g<<"0 0\n";
else if (c%cmmdc(modul(a),modul(b))==0)
{
xa=0;ya=1;x=1;y=0;
while (b)
{
cat=a/b;
r=a%b;
aux=x;
x=xa-cat*x;
xa=aux;
aux=y;
y=ya-cat*y;
ya=aux;
a=b;
b=r;
}
g<<xa*(c/a)<<' ';
g<<ya*(c/a)<<'\n';
}
else
g<<"0 0\n";
}
g.close();
return 0;
}