BEE

  • Óìíàÿ ï÷åëà
    BEE

В улее, изображенном на рисунке, в поисках нужной соты ползает пчела. Как видно из рисунка, соты представляют собой шестиугольники, и пчела может переползать из одной соты в соседнюю с ней вдоль заданных осей координат X, Y или Z. После того, как пчела оказалась в нужной ей соте, она должна возвратиться в исходную соту по пути, содержащем по возможности наименьшее количество промежуточных сот. Необходимо этот путь определить. 

Путь пчелы задается в виде последовательности пар следующего вида: сначала записывается буква (X, Y или Z), определяющая направление движения, а затем целое число, задающее, на сколько сот пчела перемещается в этом направлении.

Требуется написать программу BEE, которая по заданному пути пчелы из начальной соты в конечную вычисляет по возможности
кратчайший обратный путь.

Технические требования:

Входной файл:
INPUT.TXT
Выходной файл: OUTPUT.TXT
Ограничение по времени тестирования: 5 секунд на тест

Формат входных данных:
Входной файл INPUT.TXT состоит из последовательности следующих строк. В первой строке содержится целое число N (N£32000) — количество звеньев пути пчелы из начальной соты в конечную.
Последующие N строк содержат описания звеньев пути пчелы из начальной соты в конечную в порядке ее перемещения. В каждой строке сначала идет буква (X, Y или Z), определяющая направление движения, а затем — целое число K, задающее, на сколько сот пчела перемещается в этом направлении. Буква и число разделяются ровно одним пробелом.

Формат выходных данных:
Выходной файл OUTPUT.TXT должен содержать описание искомого пути пчелы в том же формате, что и во входном файле.

Пример:

INPUT.TXT
4
Z  –2
Y  3
Z  3
X  -1

OUTPUT.TXT
2
Y  –2
Z  –2