- Пробуем комбинации:
- 11 -> (вычти 2) -> 9 -> (умножь на 3) -> 27 (слишком много)
- 11 -> (умножь на 3) -> 33 (слишком много)
- Ищем обратный путь: Нам нужно получить 13. Как мы могли дойти до 13?
- Либо из 15 (15 - 2 = 13)
- Либо из 13/3 (не целое число)
- Строим алгоритм от 11:
- 11 -> (вычти 2) -> 9
- 9 -> (вычти 2) -> 7
- 7 -> (вычти 2) -> 5
- 5 -> (вычти 2) -> 3
- 3 -> (умножь на 3) -> 9 (не то)
- Попробуем иначе:
- 11 -> (умножь на 3) -> 33
- 33 -> (вычти 2) -> 31
- 31 -> (вычти 2) -> 29
- 29 -> (вычти 2) -> 27
- 27 -> (вычти 2) -> 25 (не то)
- Ищем более короткий путь:
- 11 -> (вычти 2) -> 9
- 9 -> (умножь на 3) -> 27 (слишком много)
- Смотрим пример: 21211 преобразует 2 в 8.
- 2 -> (вычти 2) -> 0
- 0 -> (умножь на 3) -> 0
- 0 -> (вычти 2) -> -2
- -2 -> (вычти 2) -> -4
- -4 -> (вычти 2) -> -6 (ошибка в примере или в понимании)
Перечитаем условие: «вторая утраивает его». Значит, команда 2 - умножить на 3.
Пересмотрим пример: 21211 преобразует 2 в 8.
- 2 -> (1 - вычти 2) -> 0
- 0 -> (2 - умножь на 3) -> 0
- 0 -> (1 - вычти 2) -> -2
- -2 -> (1 - вычти 2) -> -4
- -4 -> (2 - умножь на 3) -> -12 (пример все еще не сходится, возможно, в условии опечатка, и пример преобразования 2 в 8 дан для другой пары команд)
Вернемся к задаче: получить 13 из 11, команды: 1-вычти 2, 2-умножь на 3.
- Идея: Нужно как-то уменьшить число, чтобы потом умножить.
- Путь: 11 -> (вычти 2) -> 9. Теперь из 9 нужно получить 13.
- 9 -> (умножь на 3) -> 27 (слишком много)
- 9 -> (вычти 2) -> 7
- 7 -> (вычти 2) -> 5
- 5 -> (вычти 2) -> 3
- 3 -> (умножь на 3) -> 9 (снова 9)
Попробуем другой подход: Нам нужно получить 13. Если мы умножаем, то получаем большие числа. Значит, умножение на 3 должно быть последним действием, или его не должно быть вовсе. Но нам даны две команды.
Рассмотрим, что можно получить из 11:
- 11 -> (вычти 2) -> 9
- 9 -> (вычти 2) -> 7
- 7 -> (вычти 2) -> 5
- 5 -> (вычти 2) -> 3
- 3 -> (умножь на 3) -> 9
Вариант:
- 11 -> (вычти 2) -> 9
- 9 -> (умножь на 3) -> 27
- 27 -> (вычти 2) -> 25
- 25 -> (вычти 2) -> 23
- 23 -> (вычти 2) -> 21 (не то)
Попробуем такой путь:
- 11 -> (умножь на 3) -> 33
- 33 -> (вычти 2) -> 31
- 31 -> (вычти 2) -> 29
- 29 -> (вычти 2) -> 27
- 27 -> (вычти 2) -> 25 (не то)
Что если использовать только вычитание 2?
- 11 -> 9 -> 7 -> 5 -> 3 -> 1
А если одно умножение?
- 11 -> (вычти 2) -> 9
- 9 -> (умножь на 3) -> 27
- 27 -> (вычти 2) -> 25
- 25 -> (вычти 2) -> 23
Попробуем так:
- 11 --(вычти 2)--> 9
- 9 --(вычти 2)--> 7
- 7 --(умножь на 3)--> 21
- 21 --(вычти 2)--> 19
- 19 --(вычти 2)--> 17 (не то)
Рассмотрим обратный путь к 13:
- Чтобы получить 13, нужно либо иметь 15 и вычесть 2 (15-2=13), либо иметь 13/3 (не целое).
- Значит, последнее действие должно быть "вычти 2". Предыдущее число должно быть 15.
- Как из 11 получить 15 за 4 команды?
- 11 -> (вычти 2) -> 9
- 9 -> (вычти 2) -> 7
- 7 -> (умножь на 3) -> 21 (слишком много)
- Попробуем такой путь:
- 11 --(вычти 2)--> 9
- 9 --(умножь на 3)--> 27
- 27 --(вычти 2)--> 25
- 25 --(вычти 2)--> 23
- 23 --(вычти 2)--> 21 (слишком много)
А что если начать с умножения?
- 11 --(умножь на 3)--> 33
- 33 --(вычти 2)--> 31
- 31 --(вычти 2)--> 29
- 29 --(вычти 2)--> 27
- 27 --(вычти 2)--> 25 (не то)
Снова обратный путь: чтобы получить 13, предыдущее число должно быть 15 (15 - 2 = 13). Как из 11 получить 15 за 4 команды?
- 11 --(вычти 2)--> 9
- 9 --(вычти 2)--> 7
- 7 --(вычти 2)--> 5
- 5 --(умножь на 3)--> 15.
Алгоритм:
- 11 --(вычти 2)--> 9 (Команда 1)
- 9 --(вычти 2)--> 7 (Команда 1)
- 7 --(вычти 2)--> 5 (Команда 1)
- 5 --(умножь на 3)--> 15 (Команда 2)
- 15 --(вычти 2)--> 13 (Команда 1)
Получилось 5 команд. Номера: 11121.
Ответ:
11121