Задание 13 ЕГЭ по информатике · 07D82E
От меньшего к большемуВысокаяКЭС 3.3
Исполнитель преобразует число на экране.
У исполнителя есть три команды, которые обозначены латинскими буквами:
A. Вычесть 1
B. Вычесть 2
C. Найти целую часть от деления на 3
Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 20 результатом является число 3, при этом траектория вычислений не содержит чисел 13 и 14?
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы СBА при исходном числе 13 траектория состоит из чисел 4, 2, 1.
У исполнителя есть три команды, которые обозначены латинскими буквами:
A. Вычесть 1
B. Вычесть 2
C. Найти целую часть от деления на 3
Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 20 результатом является число 3, при этом траектория вычислений не содержит чисел 13 и 14?
Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы СBА при исходном числе 13 траектория состоит из чисел 4, 2, 1.
Показать ответ
44
Подсказки (3)
- Обозначьте через f(n) число допустимых программ, переводящих число n в число 3.
- Для разрешённых значений n используйте рекуррентное соотношение f(n)=f(n−1)+f(n−2)+f(⌊n/3⌋). Для чисел 13 и 14 положите f(13)=f(14)=0.
- Последовательно вычислите значения от f(3)=1 до f(20): f(15)=2, f(16)=4, f(17)=8, f(18)=15, f(19)=26, f(20)=44.
Решение
1. Пусть f(n) — число программ, переводящих число n в число 3 и не содержащих в траектории чисел 13 и 14. Для числа 3 учитываем пустую последовательность команд: f(3)=1. f(3)=1 2. Последняя команда программы может быть A, B или C. Поэтому для остальных разрешённых значений n количество программ равно сумме количества программ для чисел n−1, n−2 и ⌊n/3⌋. f(n)=f(n−1)+f(n−2)+f(⌊n/3⌋) 3. Так как траектория не должна содержать числа 13 и 14, устанавливаем f(13)=f(14)=0. Последовательное вычисление даёт: f(15)=2, f(16)=4, f(17)=8, f(18)=15, f(19)=26 4. Для исходного числа 20 получаем: f(20)=f(19)+f(18)+f(6)=26+15+3=44
Частые ошибки
- Не исключают программы, в траектории которых встречается 13 или 14.
- Ошибочно считают число 3 запрещённым начальным состоянием вместо конечного результата.
- Забывают, что команда C переводит число n в ⌊n/3⌋.
Источник: Открытый банк ФИПИ · openfipi.devinf.ru
Похожие задания
131. Прибавить 1 2. Умножить на 2 Первая команда увеличивает число на экране на 1, вторая умножает его на 2.…От меньшего к большему13Исполнитель преобразует число, записанное на экране. У исполнителя есть две команды, которым присвоены…От меньшего к большему13Исполнитель Минус преобразует число на экране. У исполнителя есть две команды, которым присвоены номера: 1.…От меньшего к большему13У исполнителя Прибавитель две команды, которым присвоены номера: 1. прибавь 1, 2. прибавь 4. Первая из них…От меньшего к большему · 032AB913Исполнитель Вычитатель преобразует число, которое записано на экране. У исполнителя Вычитатель две команды…От меньшего к большему · 37B9DD13У исполнителя Прибавитель две команды, которым присвоены номера: 1. прибавь 1, 2. прибавь 4. Первая из них…От меньшего к большему · 3BD1C013Исполнитель Плюс преобразует число на экране. У исполнителя есть две команды, которым присвоены номера: 1.…От меньшего к большему · AF908A13Исполнитель Прибавитель преобразует число на экране. У исполнителя две команды, которым присвоены номера: 1.…От меньшего к большему · B9EA99
Нужен репетитор по информатике?
Посмотрите репетиторов, которые ведут занятия в Precettore, или оставьте заявку — подберём сами.
Готовьтесь к ЕГЭ по информатике в Precettore
Варианты с автопроверкой, домашние задания от репетитора, онлайн-доска и разбор ошибок — в одном кабинете. Регистрация бесплатная.