У исполнителя Вычислитель две команды, которым присвоены номера:
1. прибавь 3
2. умножь на 3
Первая из них увеличивает число на экране на 3, вторая утраивает его.
Составьте алгоритм получения из числа 1 числа 72, содержащий не более пяти команд. В ответе запишите только номера команд.
(Например, 21211 – это алгоритм:
умножь на 3
прибавь 3
умножь на 3
прибавь 3
прибавь 3,
который преобразует число 2 в число 33.)
Если таких алгоритмов более одного, то запишите любой из них.
РЕШЕНИЕ
Будем идти от числа 72 к числу 1 применяя противоположные команды, так мы будем видеть когда промежуточный результат можно без остатка поделить на 3.
Тогда мы имеем команды:
1. Вычти 3
2. Раздели на 3
1) 72 можно без остатка поделить на 3:
72/3=24
Команда 2
2) 24 можно без остатка поделить на 3, но тогда получится число 8 , из которого никакой последовательностью команд нельзя будет получить число 1 ( 3) 8-3=5 , 4) 5-3=2, 5) 2 * 3=6), поэтому вычитаем:
24-3=21
Команда 1
3) 21 можно без остатка поделить на 3:
21/3=7
Команда 2
4) 7 нельзя без остатка поделить на 3, вычитаем:
7-3=4
Команда 1
5) 4-3=1 - искомый результат
Команда 1
Переписываем номера команд снизу вверх , так как шли в обратном порядке - 11212 (не больше 5 команд, как и необходимо по условию)
ОТВЕТ 11212