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

Удав

Удав

\includegraphics{https://static.e-olymp.com/content/59/599f69821c85ce85b91464772af5cb6d60109460.jpg} Із зоопарку міста Енську втік удав. Рятуючись від переслідування, він заліз у місцеву каналізацію. Каналізація являє собою набір колодязів, з'єднаних прямими горизонтальними трубами, причому всі колодязі, крім двох, закриті кришками. В один з відкритих колодязів удав заліз і хоче вилізти з іншого відкритого колодязя. При цьому він, звичайно, хоче проповзти найменшу відстань. Також, оскільки удав вже старий і страждає ревматизмом, він може вигигатись максимум на кут \textbf{α} (іншими словами, якщо удав переповзає з однієї труби в іншу, напрямок руху може змінитись не більше, ніж на кут \textbf{α}). Потрібно визначити найкоротший маршрут в каналізації від одного відкритого колодязя до іншого, причому такого, щоб він вигинався максимум на кут \textbf{α} (див. приклад). Переповзати з однієї труби в іншу удав може лише в колодязі, який є кінцем обох труб. По трубі удав може повзти у довільному напрямку. \InputFile У першому рядку вхідного файлу через пропуск записано три цілих числа -- \textbf{N}\textit{\textbf{, }}\textbf{M} і \textbf{α} (\textbf{1 < N ≤ 50, 0 }\textit{\textbf{≤ }}\textbf{M }\textit{\textbf{≤ }}\textbf{1225, 0 }\textit{\textbf{≤ }}\textbf{α }\textit{\textbf{≤ }}\textbf{180}), де \textbf{N} -- кількість колодязів, а \textbf{M} -- кількість труб, які з'єднують ці колодязі. У наступному рядку записано номери початкового і кінцевого колодязів маршруту. Далі в \textbf{N} рядках записано координати колодязів (по два цілих числа, які по модулю не перевищують \textbf{10000}). У наступних \textbf{M} рядках записано інформацію про труби -- по два числа у рядку, які позначають номери колодязів, з'єднаних відповідною трубою. Колодязі пронумеровано починаючи з одиниці. \OutputFile У перший рядок вихідного файлу необхідно вивести одне число -- довжину найкоротшого маршруту з точністю до трьох знаків після коми, або \textbf{--1}, якщо такого маршруту не існує. Якщо маршрут існує, то у наступний рядок необхідно вивести послідовно номери колодязів цього маршруту, відокремлені пропуском.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
4 4 90
1 4
0 1
1 1
1 0
0 0
1 2
2 3
3 4
1 3
Вихідні дані #1
3
1 2 3 4