Cod sursa(job #1723633)

Utilizator Mihaibv13Mihai Stoian Mihaibv13 Data 1 iulie 2016 10:10:09
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.8 kb
#include <cstdio>
using namespace std;

int main()
{
    FILE *f=fopen("euclid3.in","r"),*g=fopen("euclid3.out","w");
    int n,a[100],b[100],q[100],k,x0,y0,x1,y1,i,c;
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
    {
        k=1;
        fscanf(f,"%d%d%d",&a[1],&b[1],&c);
        while(b[k])
        {
            q[k]=a[k]/b[k];
            ++k;
            a[k]=b[k-1];
            b[k]=a[k-1]%b[k-1];
        }
        if(c%a[k])fprintf(g,"0 0\n");
        else
        {
            x0=c/a[k];
            y0=0;
            k--;
            while(k)
            {
                x1=y0;
                y1=x0-q[k]*y0;
                k--;
                x0=x1;
                y0=y1;
            }
            fprintf(g,"%d %d\n",x0,y0);
        }
    }
    return 0;
}