Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод 
Послать решение 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 баллов. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки для всех подзадач (без разделения на отдельные тесты).