Алгоритм вычисления значения функции , где
— целое неотрицательное число, а «//» — целочисленное деление, задан следующими соотношениями:
, при
, если
, если
Чему будет равно значение, вычисленное при выполнении вызова
?
def f (n):
if n < 4:
return 2 ** n
if n % 2 == 0:
return 2 * f(n - 1) + f(n // 2)
return f(n - 2) + 2 * n + 1 + f(n // 3)
print(f(128))
Ответ: 158450