Задачі
Хексзмії у хексболоті
Хексзмії у хексболоті
Хексболото - це дивний тип болота, вимощеного правильними шестикутними ямками. Хексзмії повзають у ньому, будучи адаптованими до навколишнього середовища. Вони являють собою ланцюжок правильних шестикутників, кожен з яких строго повністю поміщається в одну шестикутну ямочку.
Хексзмії переміщують свої секції з ямок у яких вони знаходяться, на сусідні. Щоб не зламати своє тіло, частини хексзмій, які були сусідніми до здійснення переміщення, залишаються сусідніми і після. Коли рухається одна з секцій, то секції, що прилягають до неї, сприяють руху і тому не можуть рухатись у той же самий час. Довільне число секцій, ніякі дві з яких не є сусідніми, можуть переміщуватись одночасно.
Можно помітити, що хексзмія може пересувати свої секції, які знаходяться на кінцях, у одну з двох ямок, а проміжні секції лише в одну, якщо така існує.
Наприклад, у випадку відсутності перешкод, хексзмії можуть повзти вперед, звиваючи своє тіло, як показано на \textit{\textbf{Рисунку 1}}, зліва направо. На рисунку змія у кожен момент часу переміщує чотире свої частини тіла з вісьми, і пересуває усе своє тіло вперед на довжину однієї ямки після чотирьох кроків руху. Насправді, вони набагато краще повзають боком, ніби рослини, що в'ються.
\includegraphics{https://static.e-olymp.com/content/50/5021aa33766454a74d69d4a9fe100ccbd209c76d.jpg}
\textit{\textbf{Рисунок1}}: Повзання вперед
Їхня кожа настільки липка, що якщо дві секції які спочатку не були сусідніми, попадуть у сусідні ямки (\textit{\textbf{Рисунок 2}}), то вони склеяться разом і змія помре. Дві секції не можуть поміститись у одній ямці. Це звичайно ж сковує пересування змії. Іноді їм приходиться прикласти деякі зусилля, щоб дістати шматок іжі, навіть якщо він знаходиться у ямці поруч з головою.
\includegraphics{https://static.e-olymp.com/content/ee/ee154c095b6dc3e2326be5465cc091dea32ad54f.jpg}
\textit{\textbf{Рисунок 2}}: Смертельний випадок
І там і тут на хексболоті знаходяться скали. Каждая скала поміщається у точності в одну ямку. Кожа хексзмій не прилипає до скаль, проте змії не можуть заповзати на них. І хоча ямки зі скелями обмежують пересування змій, вони у свою чергу добре знають географію місцевості і можуть планувати своє пересування по найкоротшому маршруту.
Вас призначили керівником групи вчених, яка займається проведенням наукови досліджень змій на цьому болоті. Вам потрібно завершити розпочате дослідження, але не на будь-яку шкоду. Ваша задача - оцінити як швидко хексзмія, яка харчується людьми, перемістить свою голову (першу секцію) у позицію болота, де знаходиться вчений. Секції тіла змії крім голови безвредні, і вчений, одітий у хай-тек антиприлипаючий костюм, може знаходитись у довільній з секцій тіла у одній ямці.
\InputFile
Вхідні дані складаються з декількох тестів, останній рядок містить один нуль. Кількість тестів не перевищує \textbf{10}.
Кожен тест має наступний формат.
\textbf{кількість секцій у змії (=n)}
\textbf{x1 y1}
\textbf{x2 y2}
\textbf{...}
\textbf{xn yn}
\textbf{кількість скал на болоті (=k)}
\textbf{u1 v1}
\textbf{u2 v2}
\textbf{...}
\textbf{uk vk}
\textbf{X Y}
Перший рядок кожного тесту містить число \textbf{n} - кількість секцій у змії, воно рівне \textbf{2} або більше, але ніколи не перевищує \textbf{8}. Кожен з наступних \textbf{n} рядків містит \textbf{x} та \textbf{y} координати секції змії. Рядки описують початкове положення секцій у порядку від голови до хвоста.
Наступний рядок задає кількість скал \textbf{k} у болоті, це число не від'ємне і не перевищує \textbf{100}. Кожен з наступних \textbf{k} рядків містить два цілих числа \textbf{u} та \textbf{v} - положення скали.
Останній рядок містить два цілих числа \textbf{X} та \textbf{Y} - позиція, куди необхідно приповзти змії. Голова змії спочатку тут не знаходиться.
Усі значення координат \textbf{x}, \textbf{y}, \textbf{u}, \textbf{v}, \textbf{X} та \textbf{Y} лежать в інтервалі від \textbf{-999999} до \textbf{999999} включно. Два числа у рядку відокремлено одним пропуском. У вхідних даних не зустрічаються інші символи, крім як десяткові цифри, знак минус та пропуски, що їх розділяють. Система координат, яка кодує позиції, показана на \textit{\textbf{Рисунку 3}}.
\includegraphics{https://static.e-olymp.com/content/18/18768539d454ef07ce4981a03ee5642bdbba5b25.jpg}
\textit{\textbf{Рисунок 3}}: Система координат
\OutputFile
Для коного тесту вивести рядок, який містить ціле число - найменшу кількість крокі, необхідних змії пересунути свою голову у заданую позицію. Вихідні рядки не повинні містити ніяких інших символів.
Вважайте, що хексзмії можуть знайти розв'язок не більш ніж за \textbf{20} колків.
Вхідні дані #1
3 2 -2 2 -1 1 0 1 0 2 0 0 4 2 -2 2 -1 2 0 3 0 2 1 -1 0 2 0 0 8 -6 0 -5 0 -4 0 -3 0 -2 0 -1 0 0 0 1 0 1 -1 1 0 0 6 2 -3 3 -3 3 -2 3 -1 3 0 2 1 3 1 -1 1 0 1 1 0 0 3 -8000 4996 -8000 4997 -8000 4998 2 -7999 4999 -8001 5000 -8000 5000 8 10 -8 9 -7 9 -6 9 -5 9 -4 9 -3 9 -2 9 -1 0 0 0 0
Вихідні дані #1
3 9 18 18 19 20