У исполнителя Калькулятор две команды, которым присвоены номера:
1. прибавь 2,
2. умножь на 3.
Выполняя первую из них, Калькулятор прибавляет к числу на экране 2, а выполняя вторую, утраивает его. Запишите порядок команд в программе, которая преобразует число 0 в число 32 и содержит не более 6 команд. Указывайте лишь номера команд.
(Например, программа 21211 — это программа
умножь на 3,
прибавь 2,
умножь на 3,
прибавь 2,
прибавь 2.
Эта программа преобразует число 1 в число 19.)
Умножение на число обратимо не для любого числа, поэтому, если мы пойдём от числа 32 к числу 0, тогда однозначно восстановим программу. Полученные команды будут записываться справа налево.
1) Число 32 не делится на 3, значит, оно получено прибавлением двойки к числу 30: 32 = 30 + 2 (команда 1).
2) Т. к. мы хотим получить не более 6 команд, то для получения числа 30 выгодно использовать умножение:
30 = 10 · 3 (команда 2).
Повторим первое рассуждение для чисел 10 и 8 (команда 1).
Повторим второе рассуждение для числа 6: 6 = 2 · 3 (команда 2). А для числа 2 — первое.
Тогда окончательно получаем ответ: 121121.

