Имеем две команды:
№1: умножь на 3;
№2: вычти 1.
С помощью пяти последовательных выполнений этих двух команд мы должны получить из числа 1 число 23.
Заметим, что каждое из этих команд из целого числа получает целое число.
Для решения задачи рассмотрим инверсные команды для этих двух команд:
№3: раздели на 3;
№4: прибавь 1.
Нам нужно идти в обратном порядке и с помощью этих двух инверсных команд преобразовать число 23 в число 1.
Для удобства введем переменную x, которая в ходе выполнения команд меняет свое значение.
Команда №3 может применяться лишь в том случае, когда входное число делится на 3. Поскольку команда №4 увеличивает число на 1, то, очевидно, команду №3 можем выбрать только для значений x: 24, 27, 30 и т.д. Однако, чтобы получить число 27, команда №4 должна применяться четыре раза, а с помощью последней (пятой) команды невозможно из числа 27 получить число 1.
Итак, имеем следующие преобразования (в обратном порядке):
1. x = 23.
23 + 1 = 24 (команда №4).
2. x = 24.
24 : 3 = 8 (№3).
3. х = 8. Число 8 не делится на 3, следовательно, подходит команда №4:
8 + 1 = 9 (№4).
4. х = 9. Остались две команды, очевидно, что должна дважды применяться команда №3.
9 : 3 = 3 (№3).
5. х = 3:
3 : 1 = 1 (№3).
Таким образом, имеем единственное решение:
Ответ: 11212.