Pagini recente » Cod sursa (job #1694604) | Cod sursa (job #3209750) | Cod sursa (job #2525918) | Cod sursa (job #2260247) | Cod sursa (job #1053040)
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("euclid3.in");
ofstream g("euclid3.out");
int mod(int a)
{
if(a>=0) return a%3;
else return (3+a)%3;
}
int main()
{
int T,a,b,c,q;
int x[3]={1,0},y[3]={0,1},r[3],i=0;
f>>T;
while(T--)
{
i=1;
f>>a>>b>>c;
r[0]=a; r[1]=b;
x[0]=1; y[0]=0;
x[1]=0; y[1]=1;
do
{
i=(i+1)%3;
r[i]=r[mod(i-2)]%r[mod(i-1)];
q=r[mod(i-2)]/r[mod(i-1)];
x[i]=x[mod(i-2)]-x[mod(i-1)]*q;
y[i]=y[mod(i-2)]-y[mod(i-1)]*q;
}while(r[mod(i-1)]%r[i] != 0);
if(c%r[i]!=0) g<<0<<' '<<0<<'\n';
else g<<x[i]*(c/r[i])<<' '<<y[i]*(c/r[i])<<'\n';
}
}