Алгоритм вычисления значения функции
F(n), где
n, — натуральное число, задан так:
F(n)=0 при
n≤1
при
n>1 и — нечётно
при
n>1 и
n — чётно
Чему равно значение функции
?
Решение:
Решение на Python:
from functools import lru_cache
@lru_cache(None)
def f(n):
if n <= 1: return 0
if n > 1 and n % 2 != 0: return f(n -1) + 3*n**2
if n > 1 and n % 2 == 0: return n/2 + f(n -1) + 2
for n in range(3000):
f(n)
print(f(49))
Ответ: 62820
Ответ:
62820