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

printЗадачи

1790. Доставка на дом

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

Фирма по грузоперевозкам привезла к воротам загородного дома заказанный домашний кинотеатр в очень большой кубической коробке размерами 1x1x1 метр. Так как машину на территорию участка не пустили, коробка была сгружена у ворот. Одна из ее сторон (имеется в виду грань куба) помечена как хрупкая – та, рядом с которой расположен экран. Коробка выгружена так, что хрупкая сторона не находится на земле.
Из-за огромных размеров коробки по участку её можно передвигать только перекатывая через ребра. При этом хрупкая сторона не должна оказаться на земле, иначе экран немедленно сломается. Участок имеет форму прямоугольника размером `N` на `M` метров. План участка нарисован на клетчатой бумаге, размер клетки которой соответствует 1 метру. На плане введена система коорди- нат так, что левая нижняя клетка плана имеет координату `(1;\ 1)`, правая нижняя – `(1;M)`, правая верхняя – `(N;M)`.
Изначально коробка расположена рядом с воротами, в клетке, которая на плане имеет координаты `(1;\ b)` (эта клетка расположена у нижней стороны плана участка), а переместить ее надо к двери – на другую клетку с координатами `(c;\ d)`. Задано, с какой стороны исходно находится хрупкая сторона. С какой стороны она будет после перекатываний – не важно (важно лишь, чтобы она не оказалась на земле). Участок окружён по периметру забором, поэтому коробку не получится выкатить за пределы участка.
22001.png
Ваша задача – помочь грузчикам перекатить коробку от ворот до двери дома, не поломав экрана. В первой строке вводятся целые числа N, M, b, c, d (`1\ ≤\ N\ ≤\ 10\ 000`, `1\ ≤\ M\ ≤\ 10\ 000`, `1\ ≤\ b\ ≤\ M`, `1\ ≤\ c\ ≤\ N`, `1\ ≤\ d\ ≤\ M`). Во второй строке содержится одна из букв L, R, T, F, B, описывающая начальное положение хрупкой стороны коробки (слева, справа, сверху, спереди и сзади соответственно). Считается, что задняя сторона коробки повёрнута в сторону ворот. Ворота и дверь на плане изображаются разными клетками.
Выведите последовательность перекатываний, которая позволит грузчикам выполнить постав- ленную задачу. Перекатывания обозначаются буквами
  • L (перекатывание влево – на единицу уменьшается вторая координата),
  • R (перекатывание вправо – на единицу увеличивается вторая координата),
  • F (перекатывание вперед – на единицу увеличивается первая координата),
  • B (перекатывание назад – на единицу уменьшается первая координата).
Общее количество перекатываний не должно превышать `4*(M+N)` – иначе грузчики не возьмутся за столь тяжелую работу.
Если это невозможно, выведите IMPOSSIBLE.

Пример ввода 1

4 3 2 3 2
T

Пример вывода 1

RFFL

Пример ввода 2

2 1 1 2 1
F

Пример вывода 2

IMPOSSIBLE
Источник: Московская открытая олимпиада школьников по программированию, 2010/11 учебный год
loading