Задача 3. Робот и конфеты
На поле 8×8
разложены конфеты (обозначены маленькими латинскими буквами)
В клетке, отмеченной крестиком, находится робот. Он собирает конфеты, двигаясь по следующему алгоритму: находясь в клетке, робот смотрит по горизонтали влево-вправо, по вертикали вверх-вниз, находит ближайшую к нему на этих линиях конфету и делает к ней шаг (один шаг – перемещение в соседнюю по стороне клетку). Затем он опять смотрит по горизонталям и вертикалям, ищет ближайшую конфету и делает к ней шаг и так далее. Когда робот оказывается на одной клетке с конфетой, он ее съедает, а затем смотрит, куда ему пойти дальше.
Если он видит две конфеты на одном расстоянии, то приоритет такой: между горизонталью и вертикалью он выбирает вертикаль, между вертикалью верх и вертикалью низ он выбирает вертикаль верх, между горизонталью лево и горизонталью право он выбирает горизонталь лево.
Когда робот не видит конфет на одной с ним горизонтали или вертикали, он останавливается.
Выведите строку из маленьких латинских букв – названий конфет – в той последовательности, как их соберет робот. Разделять буквы пробелами не нужно.
Answers & Comments
Verified answer
jefidgha
На каждом шаге выбираем ближайшую букву, когда берём последнюю букву a, ни на горизонтали, ни на вертикали букв не остаётся.