Уилл: Как добраться до острова, который никому не найти? Да ещё с неисправным компасом.
Джек: Он не указывает на север, но мы и не север ищем, верно?
Однажды Джек услышал легенду о сокровищах рода де Фицит.
Выпив достаточное количество рома в окрестных кабаках и
собрав различные слухи, он узнал подробности.
Древняя легенда гласит, что среди окрестных островов есть
три, на каждом из которых спрятано по одной печати.
Соединив все три печати вместе, можно получить ключ к
сундуку с бесхозным имуществом большой ценности.
Важной особенностью этих островов является то,
что они находятся на равных расстояниях друг от друга.
Как вы наверное знаете, компас капитана Джека Воробья
не указывает на север. Он указывает путь к тому,
что человек, держащий его в руках, хочет больше всего.
Джек начертил на карте прямую, на которой, если верить
показаниям его компаса, должен находится один из островов.
Джек почти ничего не знает об искомых островах и
не может сознательно изменить свои желания, чтобы узнать
направление на оставшиеся острова. Чтобы не терять времени,
он переправил компас сначала Пинтелу, а затем и Раджетти, чтобы
те так же начертили по одной прямой на своих картах.
Джек предполагает, что все трое хотели найти различные печати.
Помогите ему определить возможные координаты островов.
Исходные данные
В каждой из трёх строк входных данных описано по одной прямой.
Прямая задаётся координатами пары различных точек, лежащих на
ней — x1, y1, x2, y2.
Гарантируется, что прямые попарно различны. Все координаты на
входе являются целыми числами и не
превосходят 1 000 по абсолютному значению.
Результат
Выведите координаты точек, соответствующих искомым островам, по одной точке в строке.
i-я по порядку точка должна лежать на i-й по порядку прямой из входных данных.
Если возможны несколько вариантов расположения островов,
удовлетворяющих условиям древней легенды, то можете выбрать любой из них.
Выведенные координаты по модулю не должны превосходить 108.
Точки должны находиться на расстоянии не менее 10−6 друг от друга и
не более 10−6 от соответствующих им прямых.
Попарные расстояния между точками не должны отличаться друг от друга более чем на 10−6.
Гарантируется, что хотя бы один подходящий вариант расположения существует.
Примеры
исходные данные | результат |
---|
0 -1 1 0
0 -1 -1 0
0 -1 0 1
| 1 0
-1 0
0 1.7320508
|
3 1 4 1
-2 -1 -4 -1
-4 0 4 0
| 0 1
0 -1
1.7320508 0
|
Автор задачи: Ольга Соболева
Источник задачи: Открытый командный чемпионат УрФУ по программированию — 2012