ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

2050. 3D-моделирование

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
Старшие друзья андроида Васи уже давно занимаются моделированием шестимерных космическиих кораблей. Сам Вася пока далек от такого мастерства — у него только-только начался курс 3d-моделирования. И вот прямо сейчас он делает свое первое домашнее задание.
Задание довольно простое: нужно всего лишь построить 3d-чертеж произвольной детали. Вася уже придумал, какую деталь он хочет нарисовать, представил, как она выглядит, и даже начертил первую прямую. Но что-то пошло не так. Получилась совсем не та прямая, которая была нужна.
Но Вася не унывает, у него уже есть решение этой проблемы. Он планирует мысленно повернуть придуманную деталь так, чтобы прямая, которую он собирался начертить, перешла в имеющуюся прямую. Помогите Васе понять, какой поворот для этого нужно сделать.

Исходные данные

В первых двух строках даны координаты точек A и B. Эти точки лежат на начерченной прямой. В третьей и четвертой строках даны координаты точек C и D. Эти точки лежат на прямой, которую Вася собирался начертить. Точка A не совпадает с точкой B, точка C не совпадает с точкой D. Все числа на входе целые и не превосходят 1000 по модулю.

Результат

Если искомого поворота не существует, в единственной строке выведите «Impossible». Иначе в первых двух строках выведите координаты точек P и Q, задающих ось поворота, а в третьей α — угол поворота в градусах. Расстояние между P и Q не должно быть меньше 1. Координаты точек P и Q по модулю не должны превосходить 2000. Угол должен лежать в диапазоне [0; 360] и отсчитываться против часовой стрелки, если смотреть из точки P в направлении точки Q. Решение будет считаться верным, если при повороте прямой CD относительно PQ на угол α она переходит в прямую EF, такую что расстояния от точек A и B до прямой EF не превосходит 10−5.

Примеры

исходные данныерезультат
0 0 0
0 1 0
0 0 0
1 0 0
0 0 1
0 0 0
90
1 0 1
1 0 0
0 1 1
0 1 0
0 0 1
0 0 0
270
Автор задачи: Егор Щелконогов (идея — Дмитрий Иванков)
Источник задачи: XIX Открытый чемпионат Урала по спортивному программированию (апрель, 2015)