Pagini recente » Cod sursa (job #1303992) | Cod sursa (job #22481) | Cod sursa (job #406519) | Cod sursa (job #2075460) | Cod sursa (job #499463)
Cod sursa(job #499463)
#include <stdio.h>
void gcdext(int a, int b, int *d, int *u, int *v)
{
if(b == 0) {
*d = a;
*u = 1;
*v = 0;
} else {
int u0, v0;
gcdext(b, a%b, d, &u0, &v0);
*u = v0;
*v = u0-(a/b)*v0;
}
}
int main()
{
freopen("euclid3.in", "r", stdin);
freopen("euclid3.out", "w", stdout);
int T, a, b, c, d, u, v;
for(scanf("%d", &T); T > 0; --T) {
scanf("%d %d %d", &a, &b, &c);
gcdext(a, b, &d, &u, &v);
if(c%d == 0) {
u *= c/d;
v *= c/d;
} else u = v = 0;
printf("%d %d\n", u, v);
}
return 0;
}