Cod sursa(job #1185801)

Utilizator breahnadavidBreahna David breahnadavid Data 16 mai 2014 22:02:53
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.9 kb
#include<iostream>
#include<fstream>
#include<math.h>

using namespace std;

ifstream f;
ofstream g;

long int a,b,c,t,d,i;

long int divizor(long int a,long int b)
        {
         if (b == 0) {
        return a;
        } else
        divizor(b, a % b);
        }

int main()
{

f.open("euclid3.in");
g.open("euclid3.out");
f>>t;

while(t>0)
        {
        f>>a>>b>>c;
        if(c%a==0)g<<c/a<<' '<<0<<'\n';
        else
        if(c%b==0)g<<0<<' '<<c/b<<'\n';
        else
        {
        d=divizor(a,b);
        cout<<d;
        if(c%d==0)
                {
                c=c/d;
                a=a/d;
                b=b/d;
                i=1;
                while ((c-i*a)%b!=0)i++;
                g<<i<<' '<<(c-i*a)/b<<'\n';
                }
        else g<<0<<' '<<0<<'\n';
        }
        t--;
        }

f.close();
g.close();
return 0;
}