РУҚА
23

Решение: Программы с траекторией через 8

ЕГЭ · Информатика · Задание 23 · Алгоритмы и исполнители
ПовышеннаяФИПИE1D1CFКороткий ответ≈ 5 минутРазбор в 3 шагаОтвет сверен с ключом
Условие

Исполнитель Вычислитель преобразует число, записанное на экране. У исполнителя есть три команды: прибавить 2, умножить на 2 и прибавить 3. Программа для Вычислителя — это последовательность команд. Сколько существует программ, которые преобразуют исходное число 1 в число 18 и при этом траектория вычислений программы содержит число 8? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

Решение по шагам

3 шага
1

Так как траектория должна содержать число 8, каждую программу можно однозначно разделить на участок от 1 до 8 и участок от 8 до 18.

$$N = N_{1\to 8}\cdot N_{8\to 18}$$
2

Для каждого числа последовательно подсчитываем количество способов получить его с помощью команд «прибавить 2», «умножить на 2» и «прибавить 3», учитывая только допустимые переходы.

$$f(n)=f(n-2)+f\left(\frac{n}{2}\right)+f(n-3)$$

После подсчёта количества программ на обоих участках и перемножения результатов получаем искомое число программ.

$$N_{1\to 8}\cdot N_{8\to 18}=80$$
Ответ
80
80
так ответ выглядит в бланке

Где здесь ошибаются

Не учитывать условие о прохождении траектории через число 8.

Складывать, а не перемножать количества программ на двух участках.

Учитывать умножение на 2 только для нечётных чисел.

Закрепить приёмВ теме «Алгоритмы и исполнители» ещё 431 задача — с ответом и таким же разбором.
Тренироваться

Как решать задание 23 ЕГЭ, информатика

Разбор этой задачи разложен на 3 шага: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Алгоритмы и исполнители»: в ней 432 задачи, и у каждой есть такой же разбор. Регистрация не нужна.