Pagini recente » Cod sursa (job #478752) | Cod sursa (job #2386847) | Cod sursa (job #2884453) | Cod sursa (job #2597770) | Cod sursa (job #2462924)
#include<fstream>
#include<algorithm>
#include<string.h>
#include<string>
#include<math.h>
#include<iostream>
#include<queue>
#include<bitset>
#include<set>
#include<map>
using namespace std;
ifstream in("euclid3.in");
ofstream out("euclid3.out");
int gcd(int x, int y)
{
int r = x%y;
while (y != 0)
{
r = x % y;
x = y;
y = r;
}
return x;
}
void euclid_ext(int a, int b, int &x, int &y)
{
int r = a % b;
if (r != 0)
{
int x0, y0;
euclid_ext(b, a%b, x0, y0);
x = y0;
y =x0 - (a/b)*y0;
}
else
{
x = 0;
y = 1;
return;
}
=}
int main()
{
int n;
in >> n;
for (int i = 1; i <= n; ++i)
{
int a, b, c;
in >> a >> b >> c;
int g = gcd(a, b);
if (c % g != 0)
{
out << "0 0\n";
}
else
{
int x0, y0;
euclid_ext(a, b, x0, y0);
out << x0 * (c/g) << " " << y0*(c/g) << "\n";
}
}
return 0;
}