Напишите фрагмент кода для нахождения наибольшего общего делителя для двух натуральных чисел с помощью бинарного алгоритма.
Входные данные:
Натуральные числа
A, B (оба числа по модулю не более 10
18)
Выходные данные:
Одно число - НОД (
A,B)
Запрещено использовать другие подпрограммы, циклы, ряд стандартных функций и операцию умножения.
Примечание:
Для проверки четности числа можно воспользоваться оператором
a&1 (возврашает
True для нечётных
а и
False для четных)
Для целочисленного деления на 2 можно воспользоваться оператором
a>>1 (равносильно оператору
a//2)
Запрещенные операторы: import
; gcd
; break
; for
; %
; /