Cod sursa(job #2771278)
Utilizator | Groza 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;
}