Cod sursa(job #2771278)

Utilizator Groza_Iulia_DianaGroza Iulia Diana Groza_Iulia_Diana Data 26 august 2021 13:50:19
Problema Algoritmul lui Euclid Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.52 kb
// Repetitive substractions solution
// Runtime: O(a+b)
// Space-complexity: O(1)

#include <fstream>

using namespace std;
ifstream fin("euclid2.in");
ofstream fout("euclid2.out");

int gcd(int a, int b) {
    if(!b) {
        return a;
    }
    if(a > b) {
        return gcd(a-b, b);
    }
    return gcd(a, b-a);
}

int main()
{
    int T, a, b;
    fin >> T;
    while(T--) {
        fin >> a >> b;
        fout << gcd(a, b) << '\n';
    }
    fin.close();
    fout.close();
    return 0;
}