СДАМ ГИА: РЕШУ ЕГЭ
Образовательный портал для подготовки к экзаменам
Информатика
≡ информатика
сайты - меню - вход - новости




Задания
Версия для печати и копирования в MS Word
Задание 22 № 15932

Исполнитель РазДваТри преобразует число на экране.

У исполнителя есть три команды, которым присвоены номера:

1. Прибавить 1

2. Умножить на 2

3. Умножить на 3

Первая команда увеличивает число на экране на 1, вторая умножает его на 2, третье умножает его на 3.

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

Сколько существует программ, которые преобразуют исходное число 2 в число 44 и при этом траектория вычислений содержит число 13 и не содержит числа 29?

Траектория вычислений — это последовательность результатов выполнения всех команд программы. Например, для программы 312 при исходном числе 6 траектория будет состоять из чисел 18, 19, 38.

Решение.

Искомое количество программ равно произведению количества программ, получающих из числа 2 число 13, на количество программ, получающих из числа 13 число 44.

Пусть R(n) — количество программ, которые число 2 преобразуют в число n.

Верны следующие соотношения:

R(n) = R(n−1) + R(n/2)(если n — чётно) + R(n/3)(если n кратно 3).

 

R(2) = 1.

R(3) = R(2) = 1.

R(4) = R(2) + R(3) = 2.

R(5) = R(4) = 2.

R(6) = R(5) + R(3) + R(2) = 4.

R(7) = R(6) = 4.

R(8) = R(7) + R(4) = 6.

R(9) = R(8) + R(3) = 7.

R(10) = R(9) + R(5) = 9.

R(11) = R(10) = 9.

R(12) = R(11) + R(6) + R(4) = 15.

R(13) = R(12) = 15.

 

Программ для получения числа 44 из числа 13 всего 10, их можно перечислить:

311111, 1311, 1121...1, 11121...1, 111121...1, 1111121...1, 11111121...1, 111111121111, 11111111211, 1111111112.

 

Таким образом, количество программ, удовлетворяющих условию задачи, равно 15 · 10 = 150.

 

Примечание. 1...1 — последовательность из единиц.

 

Ответ: 150.