Одна стена. №15 ОГЭ
Задания, в которых Робот должен закрасить клетки около стены или на заданном расстоянии от неё. Длина стены неизвестна.
№C5D446
На бесконечном поле имеется длинная горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток непосредственно сверху от стены. Начальное положение Робота также неизвестно. Одно из возможных положений Робота приведено на рисунке (Робот обозначен буквой «Р»):
Напишите алгоритм для Робота, закрашивающий все клетки, расположенные выше стены и прилегающие к ней, независимо от размера стены и начального расположения Робота. Робот должен закрасить только клетки, удовлетворяющие заданному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки:
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
вариант решения
Проведём Робота вправо до конца стены. Установим над стеной и поведём в обратную сторону, закрашивая клетки:
Алгоритм_C5D446.txt
№5B42C1
условие
вариант решения
На бесконечном поле имеется длинная горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток непосредственно сверху от стены. Одно из возможных положений Робота приведено на рисунке (Робот обозначен буквой «Р»):
Напишите алгоритм для Робота, закрашивающий все клетки, расположенные ниже стены и прилегающие к ней. Робот должен закрасить только клетки, удовлетворяющие условию. Например, для приведенного выше рисунка Робот должен закрасить следующие клетки:
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Проведём Робота вправо до конца стены. Обойдём её. Установим под стеной и поведём в обратную сторону, закрашивая клетки:
№CD83DD
условие
вариант решения
На бесконечном поле имеется горизонтальная стена. Длина стены неизвестна. Робот находится над горизонтальной стеной в клетке, расположенной у левого её края.
На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»):
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные выше и ниже горизонтальной стены, прилегающие к ней. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Закрасим все клетки над стеной. Обойдём стену, установим Робота под ней. Закрасим все клетки под стеной:
№74A44A
условие
вариант решения
На бесконечном поле имеется горизонтальная стена. Длина стены неизвестна. Робот находится сверху от стены в левом ее конце. На рисунке приведено расположение Робота относительно стены (Робот обозначен буквой «Р»):
Напишите алгоритм для Робота, закрашивающий все клетки, расположенные выше стены на расстоянии одной пустой клетки от стены, независимо от длины стены. Робот должен закрасить только клетки, удовлетворяющие заданному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки:
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Решение кажется коротким, но, на самом деле, Робот делает много лишних движений. Он каждый раз проверяет, что клетка находится над стеной, после чего закрашивает верхнюю клетку:
Если бы заданием была предусмотрена проверка условия “клетка закрашена”, можно было бы сделать иначе. Закрасить первую нужную клетку, перейти вниз, дойти до конца стены, подняться на одну клетку и пройти назад, закрашивая все указанные в задании клетки до первой.
№58E1F2
условие
вариант решения
На бесконечном поле имеется длинная вертикальная стена. Длина стены неизвестна. Робот находится в одной из клеток, расположенной непосредственно слева от стены. Начальное положение Робота также неизвестно. Одно из возможных положений Робота приведено на рисунке (Робот обозначен буквой «Р»):
Напишите для Робота алгоритм, закрашивающий все клетки, расположенные левее стены и прилегающие к ней. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок):
Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться, выполнение алгоритма должно завершиться.
Доведём Робота до верхнего края стены. Спуская вниз, закрасим нужные клетки:
Примеры из Банка заданий ОГЭ