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

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

F(0) = 0;

F(n) = F(n — 1) + 3, если n > 0 и при этом n mod 3 = 2;

F(n) = F((n — n mod 3) / 3), если n > 0 и при этом n mod 3 < 2.

Укажите наименьшее возможное n, для которого F(n) = 6. Если таких значений нет, в ответе укажите -1.

def f(n):
# По условию n - натуральное
    if n == 0:
        return 99999999
    elif n > 0 and n % 3 == 2:
        return f(n - 1) + 3
    elif n > 0 and n % 3 < 2:
        return f((n - n % 3) / 3)

for i in range(1000):
    if f(i) == 6:
        print(i)

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