Присоединиться

11 класс·высокий уровень

Сколько клеток приведенного лабиринта соответствуют требованию, что

Условие

Исполнитель КОРАБЛИК «живет» в ограниченном прямоугольном водоеме-лабиринте, разделенном на клетки и изображенном на рисунке (вид сверху). Серые клетки — скалистые берега, светлые — свободное пространство, безопасное для передвижения КОРАБЛИКА. По краю водоема-лабиринта также находятся скалы с нанесенными на них номерами и буквами для удобства идентификации клеток.

Рисунок к задаче

Система команд исполнителя КОРАБЛИК:вверх | вниз | влево | вправо | При выполнении любой из этих команд КОРАБЛИК перемещается на одну клетку соответственно (по отношению к наблюдателю): вверх ↑, вниз ↓, влево ←, вправо →. Четыре команды проверяют истинность условия отсутствия стены у каждой стороны той клетки, где находится КОРАБЛИК (также по отношению к наблюдателю):сверху

свободноснизу
свободнослева
свободносправа
свободно

ЦиклПОКА <условие> команда выполняется, пока условие истинно, иначе происходит переход на следующую строку.

При попытке передвижения на любую серую клетку КОРАБЛИК разбивается о скалы.

Сколько клеток приведенного лабиринта соответствуют требованию, что, стартовав в ней и выполнив предложенную ниже программу, КОРАБЛИК не разобьется? НАЧАЛО ПОКА <справа свободно> вправо ПОКА <слева свободно> влево вверх влево КОНЕЦ

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. [рисунок] Разбиться Кораблик может только при выполнении команд "вверх" и "влево".

Осталось ещё 3 шага

  1. Начав из любой клетки строк…

  2. Стартовав из клеток С2, E2, G2, I2, K2, M2…

  3. Таким образом, условию удовлетворяет…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Выполнение алгоритмов для исполнителей»