Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 16. Информатика. ЕГЭ. Поляков-6102
- Просмотры: 46
- Изменено: 12 августа 2026
(А. Богданов) Обозначим частное от деления натурального числа \(a\) на натуральное число \(b\) как \(a \, // \, b,\) а остаток как \(a \, \% \, b.\) Алгоритм вычисления функции \(F(n),\) где \(n\) – неотрицательное число, задан следующими соотношениями:
- \(F(n) = n,\) если \(n < 10\)
- \(F(n) = F(n \,/ \, /10) + F(n \, \% \, 10),\) если \(10 \leqslant n < 1000,\)
- \(F(n) = F(n \, // \, 1000) - F(n \, \% \, 1000),\) если \(n \geqslant 1000.\)
Найдите количество чисел, не превышающих \(10^6,\) для которых \(F(n) = 0.\)
Решение:
Python
F = [0] * (10**6 + 1)
q = 1
for n in range(1, 10):
F[n] = n
for n in range(10, 10**3):
F[n] = F[n // 10] + F[n % 10]
q += F[n] == 0
for n in range(10**3, 10**6 + 1):
F[n] = F[n // 1000] - F[n % 1000]
q += F[n] == 0
print(q)
Ответ: \(55252\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


