Определите, равняется ли n числу 2ᵏ для некоторого целого неотрицательного k (1, 2, 4, 8, …).
Реализуйте функцию is_power_of_two(n).
Ввод
n: Число для проверки.
Вывод
Верните true, если n — степень двойки.
Ограничения
-10¹⁸ ≤ n ≤ 10¹⁸
Примеры
Пример 1
Ввод:
n = 64
Ожидаемый вывод:
expected = True
Ввод:
long long n = 64;
Ожидаемый вывод:
bool expected = true;
Ввод:
long n = 64;
Ожидаемый вывод:
bool expected = true;
Пояснение
64 = 2⁶.
Пример 2
Ввод:
n = 12
Ожидаемый вывод:
expected = False
Ввод:
long long n = 12;
Ожидаемый вывод:
bool expected = false;
Ввод:
long n = 12;
Ожидаемый вывод:
bool expected = false;
Пояснение
12 = 4 × 3 имеет нечётный множитель, поэтому это не степень двойки.
Ссылки
Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.