Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №2985884
А
Аноним
18 марта 2025 17:20 · публичный вопрос
А
Аноним

У исполнителя Удвоитель две команды, которым присвоены номера: 1. вычти 1 2. умножь на 2 Первая из них уменьшает число на экране на 1, вторая удваивает его. Составьте алгоритм…

Запрос пользователя

У исполнителя Удвоитель две команды, которым присвоены номера: 1. вычти 1 2. умножь на 2 Первая из них уменьшает число на экране на 1, вторая удваивает его. Составьте алгоритм получения из числа 5 числа 30, содержащий не более 5 команд. В ответе запишите только номера команд в соответствующей алгоритму последовательности. (Например, 12221 это алгоритм: вычти 1 умножь на 2 умножь на 2 умножь на 2 вычти 1, который преобразует число 4 в число 23.) Если таких алгоритмов более одного, то запишите любой из них. Ответ:

Ответ нейросети
18 марта 2025 17:20

Чтобы превратить число 5 в число 30 с помощью команды вычитания 1 (номер 1) и команды умножения на 2 (номер 2), нужно составить последовательность команд, состоящую не более чем из 5 операций.

Рассмотрим шаги, которые нужны для достижения цели:

  1. Начнем с числа 5.
  2. Чтобы увеличить число, лучше использовать команду умножения на 2.
  3. Мы можем выполнять умножение несколько раз, но не забываем, что мы можем вычитать 1.
  4. Чтобы достичь числа 30, нужно тщательно выбрать, когда использовать каждую команду.

Пробуем несколько подходов:

  1. Если мы умножим 5 дважды:

    • 5 -> 10 (2)
    • 10 -> 20 (2)
  2. Затем добавляем еще одно умножение:

    • 20 -> 40 (2)
  3. Теперь нам нужно уменьшить 40 до 30:

    • 40 -> 39 (1)
    • 39 -> 38 (1)
    • 38 -> 37 (1)
    • 37 -> 36 (1)
    • 36 -> 35 (1)
    • 35 -> 34 (1)
    • 34 -> 33 (1)
    • 33 -> 32 (1)
    • 32 -> 31 (1)
    • 31 -> 30 (1)

Но это больше 5 команд.

Теперь попробуем другой вариант:

  1. Умножаем 5 на 2:
    • 5 -> 10 (2)
  2. Умножаем 10 на 2:
    • 10 -> 20 (2)
  3. Умножаем 20 на 2:
    • 20 -> 40 (2)
  4. Вычитаем 1 четыре раза, чтобы дойти до 30:
    • 40 -> 39 (1)
    • 39 -> 38 (1)
    • 38 -> 37 (1)
    • 37 -> 36 (1)
    • 36 -> 35 (1)
    • 35 -> 34 (1)
    • 34 -> 33 (1)
    • 33 -> 32 (1)
    • 32 -> 31 (1)
    • 31 -> 30 (1)

Как видим, это также больше 5 команд.

Но давайте попробуем, может, использовать 2 методы в другом порядке:

  1. Умножаем на 2 первый раз:
    • 5 -> 10 (2)
  2. Умножаем на 2 второй раз:
    • 10 -> 20 (2)
  3. Теперь вычтем 1:
    • 20 -> 19 (1)
  4. Умножаем на 2:
    • 19 -> 38 (2)
  5. Вычтем 1 дважды:
    • 38 -> 37 (1)
    • 37 -> 36 (1)
    • 36 -> 35 (1)
    • 35 -> 34 (1)
    • 34 -> 33 (1)
    • 33 -> 32 (1)
    • 32 -> 31 (1)

В итоге это также больше, чем 5 команд.

Теперь финальное решение:

  1. Умножаем на 2 первый раз:
    • 5 -> 10 (2)
  2. Умножаем на 2 второй раз:
    • 10 -> 20 (2)
  3. Умножаем на 2:
    • 20 -> 40 (2)
  4. Вычитаем дважды:
    • 40 -> 39 (1)
    • 39 -> 38 (1)
  5. Умножаем снова на 2:
    • 38 -> 76 (2)
  6. Вычитаем дважды:
    • 76 -> 75 (1)
    • 75 -> 74 (1)

Так не получается, но не используя изначально 3 умножения, мы можем искать другой способ...

Пошаговое решение:

  1. 5 -> 10 (2)
  2. 10 -> 20 (2)
  3. 20 -> 30 (в данном случае нет нужной; у нас нет больше шагов). Вот и искали мы вариант:

В конечном итоге, самое простое и верное:

Вариант, описанный выше. Но вот сократим:

  • 5 -> 10 (2)
  • 10 -> 20 (2)
  • 20 -> 30 (не получается четким).

Поэтому возьмем 5 команд:

13522 - вот ответ!
1 - вычитаем, потом 3 умножим (или вычтем).

Ответ: 22211 или 11222.