Определение количества чётных элементов в массиве

Выражение sum(number % 2 == 0 for number in [12, 1, 55, 7, 8]) вернёт 2. Чётные элементы здесь — 12 и 8; суммируются булевы результаты проверок.

Короткий ответ

Что ответить на собеседовании

Выражение sum(number % 2 == 0 for number in [12, 1, 55, 7, 8]) вернёт 2. Чётные элементы здесь — 12 и 8; суммируются булевы результаты проверок.

Подробный разбор

Ответ с пояснениями

Условие

Составьте однострочное выражение, которое вычислит, сколько чисел с чётным значением находятся в массиве [12, 1, 55, 7, 8].

Ответ

Выражение sum(number % 2 == 0 for number in [12, 1, 55, 7, 8]) вернёт 2. Чётные элементы здесь — 12 и 8; суммируются булевы результаты проверок.

Однострочное решение:

count = sum(number % 2 == 0 for number in [12, 1, 55, 7, 8])

True участвует в сумме как 1, False — как 0. Генератор не создаёт промежуточный список, поэтому дополнительная память постоянна, время линейно. Считаются значения элементов, а не их индексы. Ноль и отрицательные чётные числа тоже прошли бы проверку делимости на 2.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее