Задача Lake
У тридев'ятому царстві, в тридесятій державі жив та був Іван – селянський
син. Приснився йому якось сон. Нібито зустрів Іван добру чарівницю, і
мовила вона: «Одружуватися тобі пора, Іванку. Сідай на коня і їдь за
тридев'ять земель до хатинки на курячих ніжках. Тільки дивися, у воду не заходь. І
якщо знайдеш найкоротший шлях до хатинки, буде тобі дружиною Василиcа
Прекрасна». Прокинувся Іван, а у нього в руках карта тридев'ятого царства,
тридесятої держави. Всі водоймища в державі – озера, кожне озеро
має форму правильного багатокутника. Жодні два озера не мають спільних
точок. Допоможіть Івану дістатися до хатинки.
Технічні
умови:
Спочатку ви вводите з клавіатури координати будинку Івана і координати хатинки.
Потім Ви вводите кількість озер (не більше 10). Потім для кожного озера Ви
вводите кількість сторін (від 3 до 20), координати центра і координати однієї
вершини.Всі числа розділені пропуском. Всі координати – дійсні
числа, що не перевершують по модулю 1000000. Ви виводите на
екран довжину найкоротшого шляху.
Приклад.
Введення> -20 10 -19 -6 2 6 -30 -12 -25 -12 4 -20.5 2.5 -16 7
Виведення> 19.0000000
Коментар.
Два озера: шестикутне і квадратне. Шуканий шлях проходить вздовж
берега квадратного озера.
Задача Lake
В тридевятом царстве, в тридесятом государстве жил да был Иван – крестьянский
сын. Приснился ему как-то сон. Будто бы встретил Иван добрую волшебницу, и
молвила она: «Жениться тебе пора, Иванушка. Садись на коня и езжай за
тридевять земель к избушке на курьих ножках. Только смотри, в воду не заходи. И
если найдешь кратчайший путь к избушке, будет тебе женой Василиса
Прекрасная». Проснулся Иван, а у него в руках карта тридевятого царства,
тридесятого государства. Все водоемы в государстве – озера, каждое озеро
имеет форму правильного многоугольника. Никакие два озера не имеют общих
точек. Помогите Ивану добраться до избушки.
Технические
условия:
Сначала вы вводите с клавиатуры координаты дома Ивана и координаты избушки.
Затем Вы вводите количество озер (не более 10). Затем для каждого озера Вы
вводите количество сторон (от 3 до 20), координаты центра и координаты одной
вершины. Все числа разделены пробелом. Все координаты – вещественные
числа, не превосходящие по модулю 1000000. Вы выводите на экран длину
кратчайшего пути.
Пример.
Ввод> -20 10 -19 -6 2 6 -30 -12 -25 -12 4 -20.5 2.5 -16 7
Вывод> 19.0000000
Комментарий.
Два озера: шестиугольное и квадратное. Искомый путь проходит по берегу
квадратного озера.