eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Гном у замку

Гном у замку

У прямокутній матриці розміром \textbf{N×M} клітин закодовано план старовинного замку. Кожна клітина плану описана одним цілим числом \textbf{A} (\textbf{0 }≤\textbf{ A }≤\textbf{ 31}), що утворене сумою чисел за таким правилом: \begin{itemize} \item \textbf{1} -- якщо є стіна на заході; \item \textbf{2} -- якщо є стіна на півночі; \item \textbf{4} -- якщо є стіна на сході; \item \textbf{8} -- якщо є стіна на півдні; \item \textbf{16} - якщо в клітині є мішок золота. \end{itemize} Вважається, що внутрішня стіна належить двом клітинам. Наприклад, південна стіна клітини (\textbf{1}, \textbf{2}) є також північною стіною клітини (\textbf{2}, \textbf{2}) (див. малюнок та приклад вхідного файлу). Зовнішня клітина, яка не має відповідної зовнішньої стіни називається клітина-вихід. На малюнку зображено дві такі клітини (\textbf{2}, \textbf{1}) та (\textbf{1}, \textbf{5}). Всього таких клітин не більше \textbf{10}. В клітині з відомими координатами (\textbf{i, j}) знаходиться гном. Він може рухатись по сусідніх клітинах, зробивши крок через спільну сторону, якщо йому не заважають стіни замку. За яку мінімальну кількість кроків \textbf{K} гном зможе потрапити в будь-яку клітину--вихід, прихопивши рівно один мішок золота (більше він не донесе)? \includegraphics{https://static.e-olymp.com/content/99/999a3cf9546fb2fd8c36a3f7bfbc8db4985c3e2e.jpg} \InputFile У першому рядку чотири числа: \textbf{N, M} -- розмір матриці (\textbf{1 }≤\textbf{ N,M }≤\textbf{ 50}) та \textbf{i, j} -- координати гнома (\textbf{1 }≤\textbf{ i }≤\textbf{ N, 1 }≤\textbf{ j }≤\textbf{ M}). Наступні \textbf{N} рядків по \textbf{M} чисел в кожному описують план замку по вказаному вище правилу. \OutputFile Одне число -- мінімальна кількість кроків\textbf{ K} до виходу або \textbf{-1}, якщо гном не може виконати завдання.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
3 5 2 3
19 10 6 11 2
8 6 9 6 5
11 8 10 8 28
Вихідні дані #1
4
Джерело III етап Всеукраїнської олімпіади школярів 2011-2012, 2 тур, м. Житомир