Алгоритм решения задания 14. Часть 1
Учимся решать 15 задания первого типа
Читать
Исполнитель преобразует число на экране.
У исполнителя есть две команды:
А. Прибавь 1
B. Поменяй местами
Первая из этих команд увеличивает число на экране на 1.
Вторая команда может применяться только к числу, у которого цифра разряда десятков по значению меньше цифры, стоящей в разряде единиц, и действует, заменяя число на экране числом, в котором цифры двух младших разрядов поменялись местами
Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 101 результатом является 154?
def f(x, y):
if x > y:
return 0
if x == y:
return 1
num = str(x)
if num[1] < num[2]:
repl_x = int(num[0] + num[2] + num[1])
return f(repl_x, y) + f(x + 1, y)
else:
return f(x + 1, y)
print(f(101, 154))
