Программы с заданной траекторией
Исполнитель преобразует число на экране. У исполнителя есть две команды: «Вычти 1» и «Найди целую часть от деления на 2». Первая команда уменьшает число на экране на 1, вторая заменяет число на экране на целую часть от деления числа на 2. Программа для исполнителя — это последовательность команд. Сколько существует программ, для которых при исходном числе 32 результатом является число 1, и при этом траектория вычислений содержит число 12? Траектория вычислений программы — это последовательность результатов выполнения всех команд программы. Например, для программы 122 при исходном числе 10 траектория состоит из чисел 9, 4, 2.
Условие как в банке ФИПИ — открыть и сверить
| Исполнитель преобразует число на экране. У исполнителя есть две команды, которым присвоены нөмір: 1. Вычти 1 2. Найди целую часть от деления на 2
Первая из них уменьшает число на экране на 1, вторая заменяет число на экране на целую часть от деления числа на 2.
Программа для исполнителя – это последовательность команд. Сколько существует программ, для которых при исходном числе 32 результатом является число 1, и при этом траектория вычислений содержит число 12? Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы 122 при исходном числе 10 траектория состоит из чисел 9, 4, 2. | |||
| |
Формат: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
1Мягкая — с чего смотретьдеңгей 1 из 3
Разбейте программу на две части: от 32 до 12 и от 12 до 1.
2Жетекші — қандай сандарды есептеудеңгей 2 из 3
Для подсчёта числа программ используйте рекуррентное соотношение: количество способов попасть в число равно сумме количеств способов попасть в него командой «Вычти 1» и командой деления на 2.
3Тікелей — іс жүзінде шешімдеңгей 3 из 3
Из 32 в 12 существует 10 программ, а из 12 в 1 — 47 программ. Общее число равно $10 \cdot 47 = 470$.