Для решения этой задачи начнем с анализа команд исполнителя Инфо:
- Прибавить 2 (позволяет увеличить текущее число на 2).
- Умножить на 2 (умножает текущее число на 2).
Наша цель — преобразовать число 2 в число 20.
Для выполнения этой задачи рассмотрим, какие последовательности операций могут привести нас к целевому числу.
Подход:
- Начнем с числа 2.
- Для достижения числа 20 мы можем использовать комбинацию двух операций.
Рассмотрим различные способы:
Если мы применяем операцию "умножить на 2", мы получаем:
- \(2 \times 2 = 4\)
- \(4 \times 2 = 8\)
- \(8 \times 2 = 16\)
- \(16 \times 2 = 32\) (это уже больше 20, значит, это не подходит).
Теперь рассмотрим операции с предшествующими "прибавлениями":
- \(2 \rightarrow 4 \rightarrow 8 \rightarrow 16 \rightarrow 18 \rightarrow 20\)
- Сначала, применив "умножить на 2" дважды, мы получаем 8, затем дважды "прибавить 2".
Давайте рассмотрим последовательности, где мы будем сочетать обе операции:
Умножить на 2, прибавить 2:
- \(2 \times 2 = 4\)
- \(4 \times 2 = 8\)
- \(8 + 2 = 10\)
- \(10 \times 2 = 20\).
Прибавить 2 перед каждым умножением:
- \(2 + 2 = 4\)
- \(4 \times 2 = 8\)
- \(8 + 2 = 10\)
- \(10 \times 2 = 20\).
Перечисление всех возможных последовательностей:
- (1, 2, 1, 2) = \(2 \rightarrow 4 \rightarrow 8 \rightarrow 10 \rightarrow 20\).
- (1, 2, 2) = \(2 \rightarrow 4 \rightarrow 8 \rightarrow 20\).
- (2, 1, 2) = \(2 \rightarrow 4 \rightarrow 10 \rightarrow 20\).
- (2, 1, 1, 2) = \(2 \rightarrow 4 \rightarrow 6 \rightarrow 8\) ...
Продолжая подобным образом, мы можем выполнить все возможные комбинации. Хотя окончательное число программ может быть достаточно большим.
Итого:
Для исчерпывающего количества программ, рекомендуется записать каждую последовательность и сгруппировать повторы. Путем перебора этих последовательностей и записей можно получить точное количество.
Поэтому, в конечном счете, существует 9 различных программ для преобразования числа 2 в 20 через эти две операции.
