Первая команда увеличивает число на экране на 1, вторая умножает его на 2. Программа для исполнителя Июнь15 – это последовательность команд. Сколько существует программ, для которых при исходном числе 1 результатом является число 28 и при этом траектория вычислений содержит число 25 и не содержит число 10?

20 Авг 2019 в 08:43
330 +1
0
Ответы
1

Для решения этой задачи можно использовать метод динамического программирования.

Пусть dp[n] - количество программ, результатом которых является число n и которые содержат число 25 и не содержат число 10.

Инициализируем dp[1] = 1 (так как изначальное число 1 и не содержит число 10).

Затем перебираем все числа n от 2 до 28 и вычисляем значения dp[n] по следующей формуле:

dp[n] = dp[n-1] + dp[n/2], если число n не делится на 2.

dp[n] = dp[n-1], если число n делится на 2.

Таким образом, перебрав все числа от 2 до 28, мы найдем количество программ, удовлетворяющих условиям задачи.

20 Апр в 13:35
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 718 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир