printРабочее место участника

printЗадачи

2425. Побег робота-кладовщика

Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Для управления роботом-кладовщиком используется программа, которая может содержать следующие команды:
  • F – идти вперед на один шаг;
  • F* – идти вперед, пока движение вперед возможно;
  • R – повернуться на 180 градусов;
  • T – взять верхний ящик в стопке ящиков прямо перед роботом;
  • D – поставить ящик в стопку ящиков прямо перед роботом;
  • C – подняться или спуститься на соседнюю стопку ящиков.
Пусть `h` – высота из стопки ящиков, на которой находится робот, и `z` – высота соседней стопки ящиков, на которую смотрит робот, тогда для команд F, T, D и C должны выполняться следующие ограничения.
КомандаОграничения
F`h=z`
C`h=z-1` или `h=z+1`
T`h=z` или `h+1=z` или `h+2=z`, робот не держит ящик
D`h=z-1` или `h=z` или `h=z+1`, робот держит ящик
Робот может переносить только один ящик. Робот не может покидать комнату. Комната имеет фиксированную длину, равную длине 20 ящиков, фиксированную ширину (1 ящик) и неограниченную высоту. Выход из комнаты находится на левой стене на высоте 3 ящиков. Перед выполнение программы робот стоит в самой левой (первой) позиции и смотрит направо. Если робот не может выполнить очередную команду программы из-за ограничений, то команда пропускается. Например, программа "TFRDRTRDRF*TRF*RFRDCC" выполняет следующие действия:
Начальная позиция (вид сбоку)Конечная позиция (вид сбоку)
....................
....................
>##.....#...........
<...................
#...................
##..................
Напишите программу, которая поможет роботу добраться до выхода из комнаты. Длина программы не должна превышать 100 символов.
Описание подзадач и системы оценивания
Подзадача 1 (25 баллов)
Программа для робота должна помочь роботу в следующей ситуации.
Начальная позиция (вид сбоку)Конечная позиция (вид сбоку)
....................
....................
....................
>######.............
<...................
#...................
##..................
###.................
Подзадача 2 (75 баллов)
Ящики находятся в любой позиции комнаты, кроме первой, высоты стопок из ящиков не более 2, всего в комнате ровно 6 ящиков.
Необходимые подзадачи: 1.
В этой подзадаче 3 теста, каждый тест оценивается в 25 баллов. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки для всех подзадач (без разделения на отдельные тесты).
loading