Алгоритм вычисления значения функции , где
— целое неотрицательное число, а «/» — целочисленное деление, задан следующими соотношениями:
,
,
, если
3 » class=»math» width=»auto»> и четно
, если
3 » class=»math» width=»auto»> и нечетно
Чему будет равно значение, вычисленное при выполнении вызова ?
def F(n):
if n == 1 or n == 2 or n == 3:
return 1
if n > 3 and n % 2 == 0:
return F(n - 1) + F(n - 3) + F(n // 3)
if n > 3 and n % 2 != 0:
return F(n - 2) + F(n - 1)
print(F(30))
Ответ: 248055