В конце статьи есть тестирование

В конце статьи есть тестирование по этой теме

Счетчик просмотров58

РЕШЕНИЕ 23 НОМЕРА (2/3)

Оглавление
Два типа дополнительных условийШаблон: обязательное числоШаблон: запрещённое числоЗадача 1. УсловиеРазборРешениеЗадача 2. Условие
Задача

Два типа дополнительных условий

В задачах 23 номера часто добавляют ограничения на траекторию вычислений. Есть два основных вида:

1. «Траектория содержит число N» — путь обязательно должен пройти через конкретное число. Решение: перемножаем количество путей от старта до N и от N до финиша.

2. «Траектория не содержит число N» — если в ходе вычислений получается запрещённое число, этот путь считается тупиком. Решение: добавляем проверку в базовый случай.

Шаблон: обязательное число

PYTHON-КОД
1
2
3
4
5
6

Логика: путей от start до end через mid = (пути от start до mid) × (пути от mid до end).

Шаблон: запрещённое число

# Траектория НЕ содержит число bad

PYTHON-КОД
1
2
3
4
5
6
7

Задача 1. Условие

Исполнитель преобразует число на экране. У исполнителя есть две команды:

A. Прибавить 2

B. Умножить на 4

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

Разбор

Условие «траектория содержит 200» означает, что путь обязательно проходит через точку 200. Значит, нужно:

1. Найти количество путей от 3 до 200

2. Найти количество путей от 200 до 510

3. Перемножить результаты

Решение

PYTHON-КОД
1
2
3
4
5

Ответ: 86

Баннер статьи

Задача 2. Условие

Исполнитель преобразует число на экране. У исполнителя есть три команды:

A. Вычесть 1

B. Вычесть 3

C. Найти целую часть от деления на 2

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

Решение

PYTHON-КОД
1
2
3
4
5
6
7

Ответ: 133

Решите задачи, чтобы усвоить материал

Решить в Личном Кабинете
Количество программ → Исполнитель

Исполнитель преобразует число на экране. У исполнителя есть три команды, которые обозначены латинскими буквами:

A. Вычесть 1
B. Вычесть 3
C. Найти целую часть от деления на 3

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

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

Количество программ → Исполнитель

Исполнитель преобразует число на экране.
У исполнителя есть две команды, которые обозначены латинскими буквами:

A. Вычти 2
B. Найти целую часть от деления на 2

Программа для исполнителя – это последовательность команд.
Сколько существует программ, для которых при исходном числе 77 результатом является число 7 и при этом траектория вычислений содержит число 14?

Траектория вычислений программы - это последовательность результатов выполнения всех команд программы.
Например, для программы ABB при исходном числе 13 траектория состоит из чисел 11, 5, 2.

Оцените статью

Другие статьи по предмету

Другие статьи не найдены