Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 16. Информатика. ЕГЭ. Поляков-4966
- Просмотры: 51
- Изменено: 15 августа 2026
Алгоритм вычисления значения функции \(F(n),\) где \(n\) – целое неотрицательное число, задан следующими соотношениями:
- \(F(0) = 1\)
- \(F(n) = 1 + F(n - 1),\) если \(n > 0\) и \(n\) нечётное
- \(F(n) = F(n \, / \, 2)\) в остальных случаях
Определите количество значений \(n\) на отрезке \([1,~500~000~000],\) для которых \(F(n) = 5.\)
Решение:
\(F(n) = 5,\) если в двоичной записи числа \(n\) присутствует ровно четыре единицы.
Python
from itertools import combinations
q = 0
for n in range(3, 29):
for a, b, c in combinations(range(1, n + 1), 3):
tmp = ['1'] + ['0'] * n
tmp[a] = '1'
tmp[b] = '1'
tmp[c] = '1'
q += int(''.join(tmp), 2) < 500_000_000
print(q)
Ответ: \(23750\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


