#1-27 номера ЕГЭ по информатике
March 20, 2023
23 Разбор номера 13498 ЕГЭ по информатике от 2023 года #23
Условие: Тип 23 № 13498
У исполнителя есть две команды, которым присвоены номера:
1. Прибавить 1 2. Прибавить 3
Сколько существует программ, для которых при исходном числе 1 результатом является число 17 и при этом траектория вычислений содержит число 9?
Комментарии к первому варианту решения задачи:
- создаем функцию, которая будет принимать и обрабатывать значение функции
- если первое число больше второго
- то возвращаем 0
- если первое число равно второму
- то возвращаем 1
- иначе
- возвращаем return F(a + 1, b) + F(a + 3, b) #, то есть используем рекурсию
- вызываем функцию, траектория которой удовлетворяет условию
# Код решения вариант 1 def F(a, b): if a > b: return 0 if a == b: return 1 else: return F(a + 1, b) + F(a + 3, b) print(F(1, 9) * F(9, 17))
Решение полностью аналогичное первому варианту, за исключением return int(a == b)
, такая конструкция возвращает 1
, если a
равно b
, иначе возвращает 0
# Код решния вариант 2 def f(a, b): if a >= b: return int(a == b) return f(a + 1, b) + f(a + 3, b) print(f(1, 9) * f(9, 17))