№13 · решено
вычитание и деление, «содержит» и «не содержит»
Исполнитель преобразует число на экране. У исполнителя три команды: A. Вычти 3 B. Вычти 8 C. Найди целую часть от деления на 2 Сколько существует программ, для которых при исходном числе 76 результатом является число 12, и при этом траектория вычислений содержит число 41 и не содержит число 73? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы CBA при исходном числе 29 траектория состоит из чисел 14, 6, 3.
Источник: ФИПИ (ЕГКР 18.04.2026), № 28942
Ответвпиши то, что вывела программа
Показать разбор
- Команды идут вниз, поэтому бери шаблон с отсечкой x < end.
- Строку x == end оставь первой, а под ней запрети число 73: верни 0.
- Сложи ответы по всем командам: −3, −8 и деление нацело на 2.
- Траектория обязана пройти через 41, поэтому раздели путь на два куска: из 76 в 41 и из 41 в 12.
- Перемножь число программ в кусках и выведи результат.
def f(x, end):
if x == end: return 1
if x == 73: return 0
if x < end: return 0
return f(x - 3, end) + f(x - 8, end) + f(x // 2, end)
print(f(76, 41) * f(41, 12))