Час

08:16:59
25 May 2012
Версія для друку

Гном у замку

   У прямокутній матриці розміром  N×M  клітин закодовано план старовинного замку. Кожна клітина плану описана одним цілим числом A (0 A  31), що утворене сумою чисел за таким правилом:

  • 1 – якщо є стіна на заході;
  • 2 – якщо є стіна на півночі;
  • 4 – якщо є стіна на сході;
  • 8 – якщо є стіна на півдні;
  • 16 - якщо в клітині є мішок золота.

   Вважається, що внутрішня стіна належить двом клітинам. Наприклад, південна стіна клітини (1, 2) є також північною  стіною клітини (2, 2) (див. малюнок та приклад вхідного файлу).

   Зовнішня клітина, яка не має відповідної зовнішньої стіни називається клітина-вихід. На малюнку зображено дві такі клітини (2, 1) та (1, 5). Всього таких клітин не більше 10.

   В клітині з відомими координатами (i, j) знаходиться гном. Він може рухатись по сусідніх клітинах, зробивши крок через спільну сторону, якщо йому не заважають стіни замку. За яку мінімальну кількість кроків K гном зможе потрапити в будь-яку клітину–вихід, прихопивши  рівно один мішок золота (більше він не донесе)?

prb2799-ua


Технічні умови

   Вхідні дані

   У першому рядку чотири числа: N, M – розмір матриці (1 N,M 50) та i, j – координати гнома (1 N, 1 M). Наступні N рядків по M чисел в кожному описують план замку по вказаному вище правилу.

   Вихідні дані

   Одне число – мінімальна кількість кроків K до виходу або -1, якщо гном не може виконати завдання.


Інформація про задачу

Ліміт часу: 1 секунда
Ліміт пам`яті: 64 MB
Бали за пройдений тест: 5

Приклад

Приклад вхідних даних

3 5 2 3
19 10 6 11 2
8 6 9 6 5
11 8 10 8 28

Приклад вихідних даних

4


← Послідовність Список задач Ориентация графа →