Problème
Afficher l’original (anglais)Retournez le plus grand commun diviseur de a et b. L'algorithme d'Euclide remplace à chaque étape (a, b) par (b, a mod b) jusqu'à ce que b soit égal à 0.
Implémentez gcd(a, b).
Entrée
a : Le premier nombre. b : Le second nombre.
Sortie
Retournez gcd(a, b). gcd(0, 0) vaut 0.
Contraintes
0 ≤ a, b ≤ 10¹⁸
Exemples
Entrée :
a = 48
b = 18
Sortie attendue :
expected = 6
Entrée :
long long a = 48;
long long b = 18;
Sortie attendue :
long long expected = 6;
Entrée :
long a = 48;
long b = 18;
Sortie attendue :
long expected = 6;
Explication
48 mod 18 = 12, 18 mod 12 = 6, 12 mod 6 = 0, donc la réponse est 6.
Entrée :
a = 17
b = 5
Sortie attendue :
expected = 1
Entrée :
long long a = 17;
long long b = 5;
Sortie attendue :
long long expected = 1;
Entrée :
long a = 17;
long b = 5;
Sortie attendue :
long expected = 1;
Explication
17 et 5 n'ont aucun facteur commun autre que 1.
Références
Ce défi a été adapté pour CodeUtility. Suivez l'énoncé et les contraintes ci-dessus.