Задание 13 ЕГЭ по информатике · ACD638

С обязательным пунктом траекторииВысокаяКЭС 3.1КЭС 3.2
Исполнитель преобразует число на экране.
У исполнителя есть две команды, которые обозначены латинскими буквами:
A. Вычти 1
B. Найди целую часть от деления на 2

Программа для исполнителя — это последовательность команд.

Сколько существует программ, для которых при исходном числе 32 результатом является число 1 и при этом траектория вычислений содержит число 10?

Траектория вычислений программы — это последовательность результатов выполнения всех команд программы.

Например, для программы ABB при исходном числе 10 траектория состоит из чисел 9, 4, 2.

Показать ответ
420
Подсказки (3)
  1. Разбейте программу в точке, когда на экране впервые появляется число 10: посчитайте отдельно пути от 32 до 10 и от 10 до 1.
  2. Для числа n число путей до целевого числа можно находить рекуррентно: последний шаг выполняется либо командой A из n−1, либо командой B из числа, для которого целая часть от деления на 2 равна n.
  3. Число путей от 10 до 1 равно 30, а число путей от 32 до 10 равно 14. Перемножьте эти количества.
Решение
1. Обозначим через f(n) количество программ, переводящих число n в число 1. Для n>1 последняя команда может быть A или B, поэтому используем рекуррентный подсчёт.
f(n)=f(n−1)+f(⌊n/2⌋),f(1)=1

2. Последовательно вычисляя значения, получаем:
f(1),…,f(10)=1,2,3,5,7,10,13,18,23,30

3. Следовательно, количество программ, переводящих 10 в 1, равно 30.

4. Теперь считаем количество путей из 32 в 10. Пусть g(n) — число путей из n в 10, причём g(10)=1. Для чисел больше 10:
g(n)=g(n−1)+g(⌊n/2⌋),g(k)=0 при k<10

5. Вычисления от 10 до 32 дают g(32)=14. Каждая программа, проходящая через 10, однозначно состоит из пути от 32 до 10 и пути от 10 до 1.
14⋅30=420
Частые ошибки
  • Не учитывать, что траектория должна содержать число 10.
  • Сложить вместо умножения количество путей до 10 и после 10.
  • Забыть, что команда B выполняет целочисленное деление на 2.

Похожие задания

13У исполнителя есть две команды, которые обозначены латинскими буквами: A. Вычти 2 B. Найди целую часть от…С обязательным пунктом траектории · B9331913У исполнителя есть две команды, которые обозначены латинскими буквами: A. Вычти 2 B. Найди целую часть от…С обязательным пунктом траектории · 8D4E1113У исполнителя есть две команды, которые обозначены латинскими буквами: A. Вычти 1 B. Найди целую часть от…С обязательным пунктом траектории · E3542213У исполнителя есть две команды, которые обозначены латинскими буквами: A. Вычти 1 B. Найди целую часть от…С обязательным пунктом траектории · 20B163131. Вычти 1 2. Найди целую часть от деления на 2 Первая из них уменьшает число на экране на 1, вторая заменяет…С обязательным пунктом траектории · 9A65F5131. Вычти 1 2. Найди целую часть от деления на 2 Первая из них уменьшает число на экране на 1, вторая заменяет…С обязательным пунктом траектории · 43B305131. Вычти 1 2. Найди целую часть от деления на 2 Первая из них уменьшает число на экране на 1, вторая заменяет…С обязательным пунктом траектории · C2EB01131. Вычти 1 2. Найди целую часть от деления на 2 Первая из них уменьшает число на экране на 1, вторая заменяет…С обязательным пунктом траектории · E9000D

Нужен репетитор по информатике?

Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.

Репетиторы по информатике

Подбор репетитора

Напишите, что нужно, — команда Precettore подберёт репетитора и свяжется с вами.

Готовьтесь к ЕГЭ по информатике в Precettore

Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.