Сложность: easy
### Условие задачи
Даны два неотрицательных целых числа low и high. Верните количество нечётных чисел между low и high (включительно).
Пример:
Input: low = 3, high = 7
Output: 3
Explanation: The odd numbers between 3 and 7 are [3,5,7].
👨💻 Алгоритм:
1⃣Проверьте, является ли число low нечётным. Это можно легко сделать с помощью оператора %, но мы используем побитовый оператор &, так как он более эффективен.
2⃣Если low нечётное, увеличьте его на 1.
3⃣Верните (high - low) / 2 + 1. Важный момент здесь - проверить, не стало ли low больше, чем high после увеличения. Это произойдёт, если low = high, и в этом случае следует вернуть 0.
😎 Решение:
class Solution:
def countOdds(self, low: int, high: int) -> int:
if (low & 1) == 0:
low += 1
return 0 if low > high else (high - low) // 2 + 1
Ставь 👍 и забирай 📚 Базу знаний