← К задачам
Быстрое возведение в степень по модулю
Реализуйте бинарное возведение в степень. Функция power_mod(a, b, m) возвращает (a ** b) % m за O(log b), не вычисляя a ** b напрямую.
Гарантируется b ≥ 0, m ≥ 1. Помните: при m == 1 любой остаток равен 0.
Формат: вход — целые a, b ≥ 0, m ≥ 1; выход — целое в диапазоне [0, m).
Примеры:
power_mod(2, 10, 1000) -> 24
power_mod(3, 0, 7) -> 1
power_mod(2, 1000000, 1000000007) -> 235042059
def power_mod(a, b, m):
# бинарное возведение в степень по модулю
pass
Для запуска тестов необходима авторизация.