Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод 
Послать решение Blockly Посылки Темы Где Обсудить (0)
Фирма по грузоперевозкам привезла к воротам загородного дома заказанный домашний кинотеатр
в очень большой кубической коробке размерами 1x1x1 метр. Так как машину на территорию
участка не пустили, коробка была сгружена у ворот. Одна из ее сторон
(имеется в виду грань куба) помечена как хрупкая – та, рядом с которой расположен экран.
Коробка выгружена так, что
хрупкая сторона не находится на земле.
Из-за огромных размеров коробки по участку её можно передвигать только перекатывая через
ребра. При этом хрупкая сторона не должна оказаться на земле, иначе экран немедленно сломается.
Участок имеет форму прямоугольника размером N на M метров. План участка нарисован на
клетчатой бумаге, размер клетки которой соответствует 1 метру. На плане введена система коорди-
нат так, что левая нижняя клетка плана имеет координату (1; , правая нижняя – (1;M), правая
верхняя – (N;M).
Изначально коробка расположена рядом с воротами, в клетке, которая на плане имеет координаты (1;\ b)
(эта клетка расположена у нижней стороны плана участка), а переместить ее надо
к двери – на другую клетку с координатами (c;\ d). Задано, с какой стороны исходно находится
хрупкая сторона. С какой стороны она будет после перекатываний – не важно (важно лишь, чтобы
она не оказалась на земле). Участок окружён по периметру забором, поэтому коробку не получится
выкатить за пределы участка.

Ваша задача – помочь грузчикам перекатить коробку от ворот до двери дома, не поломав экрана.
В первой строке вводятся целые числа 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
Пример ввода 2
2 1 1 2 1
F
Пример вывода 2
IMPOSSIBLE
Источник: Московская открытая олимпиада школьников по программированию, 2010/11 учебный год