Pagini recente » Cod sursa (job #786492) | Cod sursa (job #164820) | Cod sursa (job #3180344) | Cod sursa (job #1752227) | Cod sursa (job #675835)
Cod sursa(job #675835)
#include<fstream>
using namespace std;
int n;
void euclid_extins(int a, int b, int d, int r, int &x, int &y, int &cmmdc)
{
int x2,y2;
if (d == -1)
{
d = a / b;
r = a % b;
euclid_extins(a,b,d,r,x2,y2,cmmdc);
x = y2;
y = x2 - y2 * d;
} else
{
a = b;
b = r;
d = a / b;
r = a % b;
if (r)
{
euclid_extins(a,b,d,r,x2,y2,cmmdc);
x = y2;
y = x2 - y2 * d;
} else
{
x = 0;
y = 1;
cmmdc = b;
}
}
}
void read_solve()
{
int i,a,b,c,x,y,cmmdc;
ifstream fin("euclid3.in");
ofstream fout("euclid3.out");
fin>>n;
for (i=1; i<=n; ++i)
{
fin>>a>>b>>c;
euclid_extins(a, b, -1, -1, x, y, cmmdc);
if (c % cmmdc == 0)
{
x *= c / cmmdc;
y *= c / cmmdc;
fout<<x<<" "<<y<<'\n';
} else
fout<<"0 0"<<'\n';
}
fin.close();
fout.close();
}
int main()
{
read_solve();
return 0;
}