Cod sursa(job #2332755)

Utilizator gazdac_alex@yahoo.comGazdac Alexandru Eugen [email protected] Data 31 ianuarie 2019 10:49:56
Problema Algoritmul lui Euclid extins Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <iostream>
#include <fstream>
#include <assert.h>
using namespace std;
ifstream in("euclid3.in");
ofstream out("euclid3.out");

int e(int a,int b,int &x,int &y){
if(b==0){
  x=1;
  y=0;
  return a;
}
else{
    int x0,y0,d;
    d=e(b,a%b,x0,y0);
    x=y0;
    y=x0-(a/b)*y0;
    return d;
}
}

int main(){
int n;
in >> n;
for(int i=1;i<=n;i++){
    int a,b,c;
    in >> a >> b >> c;
    assert( -1000000000 <= a && a <= 1000000000 );
    assert( -1000000000 <= b && b <= 1000000000 );
    assert( -2000000000 <= c && c <= 2000000000 && c != 0 );
    int x,y;
    int d=e(a,b,x,y);
    if(c%d)out << "0 0" << endl;
    else out << x*(c/d) << " " << y*(c/d) << endl;
}
return 0;}