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

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

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

Условие

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

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

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

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

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

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

Ответ

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

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

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

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

    Решение. [рисунок] Эффективным приёмом решения является проверка клеток группами.

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

  1. Начав движение из любой клетки столбца А…

  2. Стартовав из любой клетки первой строки…

  3. Начав движение из любой клетки столбцов C, D…

  4. Начав движение из клетки F8 Кораблик не…

  5. Начав движение из клеток N7, N8, O7, O8…

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

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

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