Алгоритм вычисления значения функции F(n), где n — натуральное число, задан следующими соотношениями:
F(n) = 1 при n = 1;
F(n) = 3 × n + F(n — 2), если n > 1 и при этом n нечётно,
F(n) = 4 × F(n / 2), если n > 1 и при этом n чётно.
Чему равно значение функции F(42)?
Апробация ЕГЭ по информатике 19 февраля 2022 – задание №16
Тренировочный экзамен по информатике и ИКТ (КЕГЭ) в компьютерной форме
Решение:
|
1 2 3 4 5 6 7 8 |
def f(n): if n==1: return 1 if n>1 and n%2!=0: return 3*n+f(n-2) if n>1 and n%2==0: return 4*f(n//2) print(f(42)) |
Ответ: 1444
