Предположим, у меня есть два числа: 6 и 11, и я пытаюсь найти, сколько чисел между этим диапазоном делится на 2 (3, в этом случае).Эффективный алгоритм для нахождения числа чисел, делящихся на число без остатка в диапазоне
У меня есть этот простой код прямо сейчас:
def get_count(a, b, m):
count = 0
for i in range(a, b + 1):
if i % m == 0:
count += 1
return count
Ее порядок роста является линейным, O (N), я считаю.
Мне было интересно, существует ли более быстрый алгоритм с постоянной производительностью O (1) или математической формулой.
Я не ожидаю прямого ответа. Название такого алгоритма было бы удивительным.
спасибо.
Вам нужна формула, а не алгоритм. –