Задача к ЕГЭ по информатике на тему «две функции» №2

Алгоритм вычисления значений функций F(n)  и G (n)  , где n  — натуральное число, задан следующими соотношениями:

F (n) = G(n) = 2  , при <img alt="n

F (n) = F(n − 1) +2 ∗G (n − 1)+ F(n∕2)  , при 2 » class=»math» src=»/images/inform/quest/quest-3339-7.svg» width=»auto»>

G (n) = F(n − 1) +G (n∕3)+ G(n − 1)  , при 2 » class=»math» src=»/images/inform/quest/quest-3339-9.svg» width=»auto»>

где ∕  значит целочисленное деление

Чему равно значение F (12) + G(4)  ?

Решение программой:

def F(n):
    if n < 3:
        return 2
    return F(n - 1) + 2 * G(n - 1) + F(n // 2)

def G(n):
    if n < 3:
        return 2
    return F(n - 1) + G(n // 3) + G(n - 1)

print(F(12)+ G(4))

Ответ: 29476
Оцените статью
Я решу все!