(А. Богданов) Обозначим частное от деления натурального числа \(a\) на натуральное число \(b\) как \(a \, // \, b,\) а остаток как \(a \, \% \, b.\) Алгоритм вычисления функции \(F(n),\) где \(n\) – неотрицательное число, задан следующими соотношениями:
Найдите количество чисел, не превышающих \(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\)
Эффективно готовьтесь к ЕГЭ по информатике с новым тренажёром, эмулирующем работу станции КЕГЭ, которая используется на реальном экзамене