Pagini recente » Cod sursa (job #247456) | Istoria paginii runda/summer | Cod sursa (job #2803713) | Cod sursa (job #1887574) | Cod sursa (job #628484)
Cod sursa(job #628484)
#include <iostream>
#include <stdio.h>
using namespace std;
void euclid(int a, int b, int &d, int &x, int &y)
{
if (b == 0)
{
d = a;
x = 1;
y = 0;
}
else
{
int x0, y0;
euclid(b, a % b, d, x0, y0);
x = y0;
y = x0 - (a / b) * y0;
}
}
int main (void)
{
FILE *f = fopen("euclid3.in","rt");
FILE *g = fopen("euclid3.out","wt");
if (!f || !g)
{
cerr << "Error" << endl;
return 1;
}
int t;
int a, b, c;
fscanf(f, "%d", &t);
for (int i = 0 ; i < t ; i ++)
{
fscanf(f, "%d %d %d", &a, &b, &c);
int d;
int x,y;
euclid(a,b,d,x,y);
if(c % d)
{
fprintf(g, "0 0\n");
continue;
}
fprintf(g, "%d %d\n", x * (c / d), y * (c / d));
}
fclose(f);
fclose(g);
return 0;
}