РУҚА
15

Решение: Закрашивание клеток у стены

ОГЭ · Информатика · Задание 15 · Алгоритмы и исполнители
ВысокаяФИПИ390239Развёрнутое решение≈ 15 минутРазбор в 5 шагов
Условие

На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с верхним концом вертикальной стены. В горизонтальной стене есть ровно один проход, его положение и ширина неизвестны. Робот находится рядом с вертикальной стеной слева от её нижнего конца. Напишите алгоритм, который закрасит все клетки, расположенные непосредственно выше и ниже горизонтальной стены, кроме клеток прохода. Робот не должен разрушиться, выполнение алгоритма должно завершиться, а алгоритм должен работать при любом допустимом расположении стен и прохода.

Открыть задачу и решить самому
Дальше ответЕсли ещё решаете — начните с подсказок: они ведут к ответу, но не выдают его.
К подсказкам

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

5 шагов
1

Робот поднимается вдоль вертикальной стены до клетки непосредственно под правым концом горизонтальной стены.

2

Выполняется проход по нижней стороне горизонтальной стены. Если сверху находится стена, текущая клетка закрашивается; если сверху свободно, найден проход, и Робот поднимается через него.

3

После перехода через проход Робот перемещается по верхней стороне горизонтальной стены до её левого конца, закрашивая клетки, над которыми находится стена.

4

Затем Робот возвращается к проходу по верхней стороне, спускается через проход и проходит по нижней стороне до левого конца, закрашивая ещё не закрашенные клетки.

В завершение Робот снова проходит через проход на верхнюю сторону и движется к правому концу горизонтальной стены, закрашивая клетки под которыми находится стена. Клетки прохода не закрашиваются, так как над ними или под ними нет стены.

Ответ

Алгоритм должен использовать вертикальную стену для выхода к горизонтальной, единственный проход — для перехода между сторонами стены, а проверки «сверху свободно» и «снизу свободно» — для исключения прохода.

Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.

Где здесь ошибаются

Закрашивание клеток прохода.

Попытка пройти сквозь стену без предварительной проверки.

Использование фиксированного числа шагов.

Обработка только одной стороны горизонтальной стены.

Отсутствие условия остановки в конце стены.

Закрепить приёмВ теме «Алгоритмы и исполнители» ещё 177 задач — с ответом и таким же разбором.
Тренироваться

Как решать задание 15 ОГЭ, информатика

Разбор этой задачи разложен на 5 шагов: видно, откуда берётся каждое число и где теряется балл. Ответ приведён рядом с выкладками, а не вместо них.

Задача из темы «Алгоритмы и исполнители»: в ней 178 задач, и у каждой есть такой же разбор. Регистрация не нужна.