Задание №5 — Алгоритмы и программирование
У исполнителя Утроитель две команды, которым присвоены номера:
1. вычти 1
2. умножь на 3
Первая из них уменьшает число на экране на 1, вторая утраивает его. Составьте алгоритм получения из числа 5 числа 26, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 21211 это алгоритм:
умножь на 3
вычти 1
умножь на 3
вычти 1
вычти 1,
который преобразует число 2 в 13.)
Если таких алгоритмов более одного, то запишите любой из них.
Правильный ответ
11221
Пояснение
Решение.
Нам необходимо составить алгоритм для исполнителя «Утроитель», который преобразует число в число за ограниченное количество шагов (не более 5 команд). У нас есть две команды:
1. вычти 1
2. умножь на 3
Для решения таких задач удобнее всего двигаться «с конца» — от итогового числа к исходному числу . При этом действия заменяются на обратные:
1. Вместо «вычти 1» будем выполнять «прибавь 1».
2. Вместо «умножь на 3» будем выполнять «раздели на 3» (это возможно только если число делится на 3 без остатка).
Шаг 1. Начнём с числа .
Число не делится на , поэтому мы можем только прибавить :
. (Команда №1 в обратном порядке)
Шаг 2. Теперь у нас число .
Число делится на . Попробуем деление, так как оно быстрее приближает нас к числу :
. (Команда №2 в обратном порядке)
Шаг 3. Теперь у нас число .
Число делится на . Снова используем деление:
. (Команда №2 в обратном порядке)
Шаг 4. Теперь у нас число .
Нам нужно получить . Если мы продолжим делить, получим , что далеко от цели. Попробуем прибавлять единицы:
. (Команда №1 в обратном порядке)
Шаг 5. Теперь у нас число .
Прибавим ещё одну единицу:
. (Команда №1 в обратном порядке)
Мы пришли к исходному числу за 5 шагов. Теперь запишем команды в прямом порядке (от к ), заменяя обратные действия на исходные:
1. Число : вычтем 1 (команда 1)
2. Число : вычтем 1 (команда 1)
3. Число : умножим на 3 (команда 2)
4. Число : умножим на 3 (команда 2)
5. Число : вычтем 1 (команда 1)
Проверим последовательность команд: .
Алгоритм состоит из 5 команд и приводит к верному результату.
Ответ: 11221
Источник: ФИПИ